[libxerces2-java] 13/61: I forgot some files ;-)

Emmanuel Bourg ebourg-guest at moszumanska.debian.org
Sun Jun 18 22:23:39 UTC 2017


This is an automated email from the git hooks/post-receive script.

ebourg-guest pushed a commit to branch master
in repository libxerces2-java.

commit 5dd79243b87f99dd79807a7db7ec1810cbe816b9
Author: Arnaud Vandyck <avdyk at debian.org>
Date:   Thu Apr 21 12:22:08 2005 +0000

    I forgot some files ;-)
---
 debian/dom2-bindings/org/w3c/dom/Attr.java         |  124 ++
 debian/dom2-bindings/org/w3c/dom/CDATASection.java |   48 +
 .../dom2-bindings/org/w3c/dom/CharacterData.java   |  159 ++
 debian/dom2-bindings/org/w3c/dom/Comment.java      |   24 +
 debian/dom2-bindings/org/w3c/dom/DOMException.java |  116 +
 .../org/w3c/dom/DOMImplementation.java             |  110 +
 debian/dom2-bindings/org/w3c/dom/Document.java     |  428 ++++
 .../org/w3c/dom/DocumentFragment.java              |   52 +
 debian/dom2-bindings/org/w3c/dom/DocumentType.java |   80 +
 debian/dom2-bindings/org/w3c/dom/Element.java      |  322 +++
 debian/dom2-bindings/org/w3c/dom/Entity.java       |   68 +
 .../dom2-bindings/org/w3c/dom/EntityReference.java |   39 +
 debian/dom2-bindings/org/w3c/dom/NamedNodeMap.java |  174 ++
 debian/dom2-bindings/org/w3c/dom/Node.java         |  526 +++++
 debian/dom2-bindings/org/w3c/dom/NodeList.java     |   41 +
 debian/dom2-bindings/org/w3c/dom/Notation.java     |   40 +
 .../org/w3c/dom/ProcessingInstruction.java         |   47 +
 debian/dom2-bindings/org/w3c/dom/Text.java         |   56 +
 .../org/w3c/dom/css/CSS2Properties.java            | 2265 ++++++++++++++++++++
 .../org/w3c/dom/css/CSSCharsetRule.java            |   56 +
 .../org/w3c/dom/css/CSSFontFaceRule.java           |   28 +
 .../org/w3c/dom/css/CSSImportRule.java             |   44 +
 .../org/w3c/dom/css/CSSMediaRule.java              |   76 +
 .../dom2-bindings/org/w3c/dom/css/CSSPageRule.java |   48 +
 .../org/w3c/dom/css/CSSPrimitiveValue.java         |  296 +++
 debian/dom2-bindings/org/w3c/dom/css/CSSRule.java  |  105 +
 .../dom2-bindings/org/w3c/dom/css/CSSRuleList.java |   43 +
 .../org/w3c/dom/css/CSSStyleDeclaration.java       |  164 ++
 .../org/w3c/dom/css/CSSStyleRule.java              |   51 +
 .../org/w3c/dom/css/CSSStyleSheet.java             |   85 +
 .../org/w3c/dom/css/CSSUnknownRule.java            |   22 +
 debian/dom2-bindings/org/w3c/dom/css/CSSValue.java |   78 +
 .../org/w3c/dom/css/CSSValueList.java              |   46 +
 debian/dom2-bindings/org/w3c/dom/css/Counter.java  |   38 +
 .../org/w3c/dom/css/DOMImplementationCSS.java      |   40 +
 .../dom2-bindings/org/w3c/dom/css/DocumentCSS.java |   50 +
 .../org/w3c/dom/css/ElementCSSInlineStyle.java     |   32 +
 debian/dom2-bindings/org/w3c/dom/css/RGBColor.java |   47 +
 debian/dom2-bindings/org/w3c/dom/css/Rect.java     |   44 +
 debian/dom2-bindings/org/w3c/dom/css/ViewCSS.java  |   43 +
 .../org/w3c/dom/events/DocumentEvent.java          |   56 +
 debian/dom2-bindings/org/w3c/dom/events/Event.java |  141 ++
 .../org/w3c/dom/events/EventException.java         |   36 +
 .../org/w3c/dom/events/EventListener.java          |   41 +
 .../org/w3c/dom/events/EventTarget.java            |  102 +
 .../org/w3c/dom/events/MouseEvent.java             |  156 ++
 .../org/w3c/dom/events/MutationEvent.java          |  108 +
 .../dom2-bindings/org/w3c/dom/events/UIEvent.java  |   58 +
 .../org/w3c/dom/html/HTMLAnchorElement.java        |   94 +
 .../org/w3c/dom/html/HTMLAppletElement.java        |   88 +
 .../org/w3c/dom/html/HTMLAreaElement.java          |   67 +
 .../org/w3c/dom/html/HTMLBRElement.java            |   23 +
 .../org/w3c/dom/html/HTMLBaseElement.java          |   27 +
 .../org/w3c/dom/html/HTMLBaseFontElement.java      |   36 +
 .../org/w3c/dom/html/HTMLBodyElement.java          |   57 +
 .../org/w3c/dom/html/HTMLButtonElement.java        |   56 +
 .../org/w3c/dom/html/HTMLCollection.java           |   46 +
 .../org/w3c/dom/html/HTMLDListElement.java         |   23 +
 .../org/w3c/dom/html/HTMLDirectoryElement.java     |   24 +
 .../org/w3c/dom/html/HTMLDivElement.java           |   23 +
 .../org/w3c/dom/html/HTMLDocument.java             |  135 ++
 .../org/w3c/dom/html/HTMLElement.java              |   54 +
 .../org/w3c/dom/html/HTMLFieldSetElement.java      |   23 +
 .../org/w3c/dom/html/HTMLFontElement.java          |   36 +
 .../org/w3c/dom/html/HTMLFormElement.java          |   72 +
 .../org/w3c/dom/html/HTMLFrameElement.java         |   65 +
 .../org/w3c/dom/html/HTMLFrameSetElement.java      |   29 +
 .../org/w3c/dom/html/HTMLHRElement.java            |   42 +
 .../org/w3c/dom/html/HTMLHeadElement.java          |   23 +
 .../org/w3c/dom/html/HTMLHeadingElement.java       |   24 +
 .../org/w3c/dom/html/HTMLHtmlElement.java          |   23 +
 .../org/w3c/dom/html/HTMLIFrameElement.java        |   76 +
 .../org/w3c/dom/html/HTMLImageElement.java         |   92 +
 .../org/w3c/dom/html/HTMLInputElement.java         |  151 ++
 .../org/w3c/dom/html/HTMLIsIndexElement.java       |   29 +
 .../org/w3c/dom/html/HTMLLIElement.java            |   30 +
 .../org/w3c/dom/html/HTMLLabelElement.java         |   34 +
 .../org/w3c/dom/html/HTMLLegendElement.java        |   35 +
 .../org/w3c/dom/html/HTMLLinkElement.java          |   70 +
 .../org/w3c/dom/html/HTMLMapElement.java           |   27 +
 .../org/w3c/dom/html/HTMLMenuElement.java          |   24 +
 .../org/w3c/dom/html/HTMLMetaElement.java          |   39 +
 .../org/w3c/dom/html/HTMLModElement.java           |   30 +
 .../org/w3c/dom/html/HTMLOListElement.java         |   35 +
 .../org/w3c/dom/html/HTMLObjectElement.java        |  129 ++
 .../org/w3c/dom/html/HTMLOptGroupElement.java      |   30 +
 .../org/w3c/dom/html/HTMLOptionElement.java        |   59 +
 .../org/w3c/dom/html/HTMLParagraphElement.java     |   23 +
 .../org/w3c/dom/html/HTMLParamElement.java         |   43 +
 .../org/w3c/dom/html/HTMLPreElement.java           |   23 +
 .../org/w3c/dom/html/HTMLQuoteElement.java         |   24 +
 .../org/w3c/dom/html/HTMLScriptElement.java        |   56 +
 .../org/w3c/dom/html/HTMLSelectElement.java        |  100 +
 .../org/w3c/dom/html/HTMLStyleElement.java         |   36 +
 .../org/w3c/dom/html/HTMLTableCaptionElement.java  |   23 +
 .../org/w3c/dom/html/HTMLTableCellElement.java     |  107 +
 .../org/w3c/dom/html/HTMLTableColElement.java      |   53 +
 .../org/w3c/dom/html/HTMLTableElement.java         |  142 ++
 .../org/w3c/dom/html/HTMLTableRowElement.java      |   74 +
 .../org/w3c/dom/html/HTMLTableSectionElement.java  |   56 +
 .../org/w3c/dom/html/HTMLTextAreaElement.java      |   92 +
 .../org/w3c/dom/html/HTMLTitleElement.java         |   22 +
 .../org/w3c/dom/html/HTMLUListElement.java         |   29 +
 .../org/w3c/dom/ranges/DocumentRange.java          |   33 +
 debian/dom2-bindings/org/w3c/dom/ranges/Range.java |  416 ++++
 .../org/w3c/dom/ranges/RangeException.java         |   39 +
 .../org/w3c/dom/stylesheets/DocumentStyle.java     |   34 +
 .../org/w3c/dom/stylesheets/LinkStyle.java         |   31 +
 .../org/w3c/dom/stylesheets/MediaList.java         |   90 +
 .../org/w3c/dom/stylesheets/StyleSheet.java        |  103 +
 .../org/w3c/dom/stylesheets/StyleSheetList.java    |   42 +
 .../org/w3c/dom/traversal/DocumentTraversal.java   |   92 +
 .../org/w3c/dom/traversal/NodeFilter.java          |  144 ++
 .../org/w3c/dom/traversal/NodeIterator.java        |  109 +
 .../org/w3c/dom/traversal/TreeWalker.java          |  182 ++
 .../org/w3c/dom/views/AbstractView.java            |   27 +
 .../org/w3c/dom/views/DocumentView.java            |   30 +
 117 files changed, 11108 insertions(+)

diff --git a/debian/dom2-bindings/org/w3c/dom/Attr.java b/debian/dom2-bindings/org/w3c/dom/Attr.java
new file mode 100644
index 0000000..4ba62e2
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/Attr.java
@@ -0,0 +1,124 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>Attr</code> interface represents an attribute in an 
+ * <code>Element</code> object. Typically the allowable values for the 
+ * attribute are defined in a document type definition.
+ * <p><code>Attr</code> objects inherit the <code>Node</code> interface, but 
+ * since they are not actually child nodes of the element they describe, the 
+ * DOM does not consider them part of the document tree. Thus, the 
+ * <code>Node</code> attributes <code>parentNode</code>, 
+ * <code>previousSibling</code>, and <code>nextSibling</code> have a 
+ * <code>null</code> value for <code>Attr</code> objects. The DOM takes the 
+ * view that attributes are properties of elements rather than having a 
+ * separate identity from the elements they are associated with; this should 
+ * make it more efficient to implement such features as default attributes 
+ * associated with all elements of a given type. Furthermore, 
+ * <code>Attr</code> nodes may not be immediate children of a 
+ * <code>DocumentFragment</code>. However, they can be associated with 
+ * <code>Element</code> nodes contained within a 
+ * <code>DocumentFragment</code>. In short, users and implementors of the 
+ * DOM need to be aware that <code>Attr</code> nodes have some things in 
+ * common with other objects inheriting the <code>Node</code> interface, but 
+ * they also are quite distinct.
+ * <p>The attribute's effective value is determined as follows: if this 
+ * attribute has been explicitly assigned any value, that value is the 
+ * attribute's effective value; otherwise, if there is a declaration for 
+ * this attribute, and that declaration includes a default value, then that 
+ * default value is the attribute's effective value; otherwise, the 
+ * attribute does not exist on this element in the structure model until it 
+ * has been explicitly added. Note that the <code>nodeValue</code> attribute 
+ * on the <code>Attr</code> instance can also be used to retrieve the string 
+ * version of the attribute's value(s).
+ * <p>In XML, where the value of an attribute can contain entity references, 
+ * the child nodes of the <code>Attr</code> node may be either 
+ * <code>Text</code> or <code>EntityReference</code> nodes (when these are 
+ * in use; see the description of <code>EntityReference</code> for 
+ * discussion). Because the DOM Core is not aware of attribute types, it 
+ * treats all attribute values as simple strings, even if the DTD or schema 
+ * declares them as having tokenized types.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface Attr extends Node {
+    /**
+     * Returns the name of this attribute.
+     */
+    public String getName();
+
+    /**
+     * If this attribute was explicitly given a value in the original 
+     * document, this is <code>true</code>; otherwise, it is 
+     * <code>false</code>. Note that the implementation is in charge of this 
+     * attribute, not the user. If the user changes the value of the 
+     * attribute (even if it ends up having the same value as the default 
+     * value) then the <code>specified</code> flag is automatically flipped 
+     * to <code>true</code>. To re-specify the attribute as the default 
+     * value from the DTD, the user must delete the attribute. The 
+     * implementation will then make a new attribute available with 
+     * <code>specified</code> set to <code>false</code> and the default 
+     * value (if one exists).
+     * <br>In summary: If the attribute has an assigned value in the document 
+     * then <code>specified</code> is <code>true</code>, and the value is 
+     * the assigned value.If the attribute has no assigned value in the 
+     * document and has a default value in the DTD, then 
+     * <code>specified</code> is <code>false</code>, and the value is the 
+     * default value in the DTD.If the attribute has no assigned value in 
+     * the document and has a value of #IMPLIED in the DTD, then the 
+     * attribute does not appear in the structure model of the document.If 
+     * the <code>ownerElement</code> attribute is <code>null</code> (i.e. 
+     * because it was just created or was set to <code>null</code> by the 
+     * various removal and cloning operations) <code>specified</code> is 
+     * <code>true</code>. 
+     */
+    public boolean getSpecified();
+
+    /**
+     * On retrieval, the value of the attribute is returned as a string. 
+     * Character and general entity references are replaced with their 
+     * values. See also the method <code>getAttribute</code> on the 
+     * <code>Element</code> interface.
+     * <br>On setting, this creates a <code>Text</code> node with the unparsed 
+     * contents of the string. I.e. any characters that an XML processor 
+     * would recognize as markup are instead treated as literal text. See 
+     * also the method <code>setAttribute</code> on the <code>Element</code> 
+     * interface.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.
+     */
+    public String getValue();
+    /**
+     * On retrieval, the value of the attribute is returned as a string. 
+     * Character and general entity references are replaced with their 
+     * values. See also the method <code>getAttribute</code> on the 
+     * <code>Element</code> interface.
+     * <br>On setting, this creates a <code>Text</code> node with the unparsed 
+     * contents of the string. I.e. any characters that an XML processor 
+     * would recognize as markup are instead treated as literal text. See 
+     * also the method <code>setAttribute</code> on the <code>Element</code> 
+     * interface.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.
+     */
+    public void setValue(String value)
+                            throws DOMException;
+
+    /**
+     * The <code>Element</code> node this attribute is attached to or 
+     * <code>null</code> if this attribute is not in use.
+     * @since DOM Level 2
+     */
+    public Element getOwnerElement();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/CDATASection.java b/debian/dom2-bindings/org/w3c/dom/CDATASection.java
new file mode 100644
index 0000000..f3aea8a
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/CDATASection.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * CDATA sections are used to escape blocks of text containing characters that 
+ * would otherwise be regarded as markup. The only delimiter that is 
+ * recognized in a CDATA section is the "]]>" string that ends the CDATA 
+ * section. CDATA sections cannot be nested. Their primary purpose is for 
+ * including material such as XML fragments, without needing to escape all 
+ * the delimiters.
+ * <p>The <code>DOMString</code> attribute of the <code>Text</code> node holds 
+ * the text that is contained by the CDATA section. Note that this may 
+ * contain characters that need to be escaped outside of CDATA sections and 
+ * that, depending on the character encoding ("charset") chosen for 
+ * serialization, it may be impossible to write out some characters as part 
+ * of a CDATA section.
+ * <p>The <code>CDATASection</code> interface inherits from the 
+ * <code>CharacterData</code> interface through the <code>Text</code> 
+ * interface. Adjacent <code>CDATASection</code> nodes are not merged by use 
+ * of the <code>normalize</code> method of the <code>Node</code> interface.
+ * Because no markup is recognized within a <code>CDATASection</code>, 
+ * character numeric references cannot be used as an escape mechanism when 
+ * serializing. Therefore, action needs to be taken when serializing a 
+ * <code>CDATASection</code> with a character encoding where some of the 
+ * contained characters cannot be represented. Failure to do so would not 
+ * produce well-formed XML.One potential solution in the serialization 
+ * process is to end the CDATA section before the character, output the 
+ * character using a character reference or entity reference, and open a new 
+ * CDATA section for any further characters in the text node. Note, however, 
+ * that some code conversion libraries at the time of writing do not return 
+ * an error or exception when a character is missing from the encoding, 
+ * making the task of ensuring that data is not corrupted on serialization 
+ * more difficult.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface CDATASection extends Text {
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/CharacterData.java b/debian/dom2-bindings/org/w3c/dom/CharacterData.java
new file mode 100644
index 0000000..c067120
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/CharacterData.java
@@ -0,0 +1,159 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>CharacterData</code> interface extends Node with a set of 
+ * attributes and methods for accessing character data in the DOM. For 
+ * clarity this set is defined here rather than on each object that uses 
+ * these attributes and methods. No DOM objects correspond directly to 
+ * <code>CharacterData</code>, though <code>Text</code> and others do 
+ * inherit the interface from it. All <code>offsets</code> in this interface 
+ * start from <code>0</code>.
+ * <p>As explained in the <code>DOMString</code> interface, text strings in 
+ * the DOM are represented in UTF-16, i.e. as a sequence of 16-bit units. In 
+ * the following, the term 16-bit units is used whenever necessary to 
+ * indicate that indexing on CharacterData is done in 16-bit units.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface CharacterData extends Node {
+    /**
+     * The character data of the node that implements this interface. The DOM 
+     * implementation may not put arbitrary limits on the amount of data 
+     * that may be stored in a <code>CharacterData</code> node. However, 
+     * implementation limits may mean that the entirety of a node's data may 
+     * not fit into a single <code>DOMString</code>. In such cases, the user 
+     * may call <code>substringData</code> to retrieve the data in 
+     * appropriately sized pieces.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.
+     * @exception DOMException
+     *   DOMSTRING_SIZE_ERR: Raised when it would return more characters than 
+     *   fit in a <code>DOMString</code> variable on the implementation 
+     *   platform.
+     */
+    public String getData()
+                            throws DOMException;
+    /**
+     * The character data of the node that implements this interface. The DOM 
+     * implementation may not put arbitrary limits on the amount of data 
+     * that may be stored in a <code>CharacterData</code> node. However, 
+     * implementation limits may mean that the entirety of a node's data may 
+     * not fit into a single <code>DOMString</code>. In such cases, the user 
+     * may call <code>substringData</code> to retrieve the data in 
+     * appropriately sized pieces.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.
+     * @exception DOMException
+     *   DOMSTRING_SIZE_ERR: Raised when it would return more characters than 
+     *   fit in a <code>DOMString</code> variable on the implementation 
+     *   platform.
+     */
+    public void setData(String data)
+                            throws DOMException;
+
+    /**
+     * The number of 16-bit units that are available through <code>data</code> 
+     * and the <code>substringData</code> method below. This may have the 
+     * value zero, i.e., <code>CharacterData</code> nodes may be empty.
+     */
+    public int getLength();
+
+    /**
+     * Extracts a range of data from the node.
+     * @param offset Start offset of substring to extract.
+     * @param count The number of 16-bit units to extract.
+     * @return The specified substring. If the sum of <code>offset</code> and 
+     *   <code>count</code> exceeds the <code>length</code>, then all 16-bit 
+     *   units to the end of the data are returned.
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if the specified <code>offset</code> is 
+     *   negative or greater than the number of 16-bit units in 
+     *   <code>data</code>, or if the specified <code>count</code> is 
+     *   negative.
+     *   <br>DOMSTRING_SIZE_ERR: Raised if the specified range of text does 
+     *   not fit into a <code>DOMString</code>.
+     */
+    public String substringData(int offset, 
+                                int count)
+                                throws DOMException;
+
+    /**
+     * Append the string to the end of the character data of the node. Upon 
+     * success, <code>data</code> provides access to the concatenation of 
+     * <code>data</code> and the <code>DOMString</code> specified.
+     * @param arg The <code>DOMString</code> to append.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     */
+    public void appendData(String arg)
+                           throws DOMException;
+
+    /**
+     * Insert a string at the specified 16-bit unit offset.
+     * @param offset The character offset at which to insert.
+     * @param arg The <code>DOMString</code> to insert.
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if the specified <code>offset</code> is 
+     *   negative or greater than the number of 16-bit units in 
+     *   <code>data</code>.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     */
+    public void insertData(int offset, 
+                           String arg)
+                           throws DOMException;
+
+    /**
+     * Remove a range of 16-bit units from the node. Upon success, 
+     * <code>data</code> and <code>length</code> reflect the change.
+     * @param offset The offset from which to start removing.
+     * @param count The number of 16-bit units to delete. If the sum of 
+     *   <code>offset</code> and <code>count</code> exceeds 
+     *   <code>length</code> then all 16-bit units from <code>offset</code> 
+     *   to the end of the data are deleted.
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if the specified <code>offset</code> is 
+     *   negative or greater than the number of 16-bit units in 
+     *   <code>data</code>, or if the specified <code>count</code> is 
+     *   negative.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     */
+    public void deleteData(int offset, 
+                           int count)
+                           throws DOMException;
+
+    /**
+     * Replace the characters starting at the specified 16-bit unit offset 
+     * with the specified string.
+     * @param offset The offset from which to start replacing.
+     * @param count The number of 16-bit units to replace. If the sum of 
+     *   <code>offset</code> and <code>count</code> exceeds 
+     *   <code>length</code>, then all 16-bit units to the end of the data 
+     *   are replaced; (i.e., the effect is the same as a <code>remove</code>
+     *    method call with the same range, followed by an <code>append</code>
+     *    method invocation).
+     * @param arg The <code>DOMString</code> with which the range must be 
+     *   replaced.
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if the specified <code>offset</code> is 
+     *   negative or greater than the number of 16-bit units in 
+     *   <code>data</code>, or if the specified <code>count</code> is 
+     *   negative.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     */
+    public void replaceData(int offset, 
+                            int count, 
+                            String arg)
+                            throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/Comment.java b/debian/dom2-bindings/org/w3c/dom/Comment.java
new file mode 100644
index 0000000..1097921
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/Comment.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * This interface inherits from <code>CharacterData</code> and represents the 
+ * content of a comment, i.e., all the characters between the starting '
+ * <code><!--</code>' and ending '<code>--></code>'. Note that this is 
+ * the definition of a comment in XML, and, in practice, HTML, although some 
+ * HTML tools may implement the full SGML comment structure.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface Comment extends CharacterData {
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/DOMException.java b/debian/dom2-bindings/org/w3c/dom/DOMException.java
new file mode 100644
index 0000000..16866ce
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/DOMException.java
@@ -0,0 +1,116 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * DOM operations only raise exceptions in "exceptional" circumstances, i.e., 
+ * when an operation is impossible to perform (either for logical reasons, 
+ * because data is lost, or because the implementation has become unstable). 
+ * In general, DOM methods return specific error values in ordinary 
+ * processing situations, such as out-of-bound errors when using 
+ * <code>NodeList</code>.
+ * <p>Implementations should raise other exceptions under other circumstances. 
+ * For example, implementations should raise an implementation-dependent 
+ * exception if a <code>null</code> argument is passed.
+ * <p>Some languages and object systems do not support the concept of 
+ * exceptions. For such systems, error conditions may be indicated using 
+ * native error reporting mechanisms. For some bindings, for example, 
+ * methods may return error codes similar to those listed in the 
+ * corresponding method descriptions.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public class DOMException extends RuntimeException {
+    public DOMException(short code, String message) {
+       super(message);
+       this.code = code;
+    }
+    public short   code;
+    // ExceptionCode
+    /**
+     * If index or size is negative, or greater than the allowed value
+     */
+    public static final short INDEX_SIZE_ERR            = 1;
+    /**
+     * If the specified range of text does not fit into a DOMString
+     */
+    public static final short DOMSTRING_SIZE_ERR        = 2;
+    /**
+     * If any node is inserted somewhere it doesn't belong
+     */
+    public static final short HIERARCHY_REQUEST_ERR     = 3;
+    /**
+     * If a node is used in a different document than the one that created it 
+     * (that doesn't support it)
+     */
+    public static final short WRONG_DOCUMENT_ERR        = 4;
+    /**
+     * If an invalid or illegal character is specified, such as in a name. See 
+     * production 2 in the XML specification for the definition of a legal 
+     * character, and production 5 for the definition of a legal name 
+     * character.
+     */
+    public static final short INVALID_CHARACTER_ERR     = 5;
+    /**
+     * If data is specified for a node which does not support data
+     */
+    public static final short NO_DATA_ALLOWED_ERR       = 6;
+    /**
+     * If an attempt is made to modify an object where modifications are not 
+     * allowed
+     */
+    public static final short NO_MODIFICATION_ALLOWED_ERR = 7;
+    /**
+     * If an attempt is made to reference a node in a context where it does 
+     * not exist
+     */
+    public static final short NOT_FOUND_ERR             = 8;
+    /**
+     * If the implementation does not support the requested type of object or 
+     * operation.
+     */
+    public static final short NOT_SUPPORTED_ERR         = 9;
+    /**
+     * If an attempt is made to add an attribute that is already in use 
+     * elsewhere
+     */
+    public static final short INUSE_ATTRIBUTE_ERR       = 10;
+    /**
+     * If an attempt is made to use an object that is not, or is no longer, 
+     * usable.
+     * @since DOM Level 2
+     */
+    public static final short INVALID_STATE_ERR         = 11;
+    /**
+     * If an invalid or illegal string is specified.
+     * @since DOM Level 2
+     */
+    public static final short SYNTAX_ERR                = 12;
+    /**
+     * If an attempt is made to modify the type of the underlying object.
+     * @since DOM Level 2
+     */
+    public static final short INVALID_MODIFICATION_ERR  = 13;
+    /**
+     * If an attempt is made to create or change an object in a way which is 
+     * incorrect with regard to namespaces.
+     * @since DOM Level 2
+     */
+    public static final short NAMESPACE_ERR             = 14;
+    /**
+     * If a parameter or an operation is not supported by the underlying 
+     * object.
+     * @since DOM Level 2
+     */
+    public static final short INVALID_ACCESS_ERR        = 15;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/DOMImplementation.java b/debian/dom2-bindings/org/w3c/dom/DOMImplementation.java
new file mode 100644
index 0000000..6e9a554
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/DOMImplementation.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>DOMImplementation</code> interface provides a number of methods 
+ * for performing operations that are independent of any particular instance 
+ * of the document object model.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface DOMImplementation {
+    /**
+     * Test if the DOM implementation implements a specific feature.
+     * @param feature The name of the feature to test (case-insensitive). The 
+     *   values used by DOM features are defined throughout the DOM Level 2 
+     *   specifications and listed in the  section. The name must be an XML 
+     *   name. To avoid possible conflicts, as a convention, names referring 
+     *   to features defined outside the DOM specification should be made 
+     *   unique.
+     * @param version This is the version number of the feature to test. In 
+     *   Level 2, the string can be either "2.0" or "1.0". If the version is 
+     *   not specified, supporting any version of the feature causes the 
+     *   method to return <code>true</code>.
+     * @return <code>true</code> if the feature is implemented in the 
+     *   specified version, <code>false</code> otherwise.
+     */
+    public boolean hasFeature(String feature, 
+                              String version);
+
+    /**
+     * Creates an empty <code>DocumentType</code> node. Entity declarations 
+     * and notations are not made available. Entity reference expansions and 
+     * default attribute additions do not occur. It is expected that a 
+     * future version of the DOM will provide a way for populating a 
+     * <code>DocumentType</code>.
+     * @param qualifiedName The qualified name of the document type to be 
+     *   created.
+     * @param publicId The external subset public identifier.
+     * @param systemId The external subset system identifier.
+     * @return A new <code>DocumentType</code> node with 
+     *   <code>Node.ownerDocument</code> set to <code>null</code>.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified qualified name 
+     *   contains an illegal character.
+     *   <br>NAMESPACE_ERR: Raised if the <code>qualifiedName</code> is 
+     *   malformed.
+     *   <br>NOT_SUPPORTED_ERR: May be raised by DOM implementations which do 
+     *   not support the <code>"XML"</code> feature, if they choose not to 
+     *   support this method. Other features introduced in the future, by 
+     *   the DOM WG or in extensions defined by other groups, may also 
+     *   demand support for this method; please consult the definition of 
+     *   the feature to see if it requires this method. 
+     * @since DOM Level 2
+     */
+    public DocumentType createDocumentType(String qualifiedName, 
+                                           String publicId, 
+                                           String systemId)
+                                           throws DOMException;
+
+    /**
+     * Creates a DOM Document object of the specified type with its document 
+     * element.
+     * @param namespaceURI The namespace URI of the document element to 
+     *   create.
+     * @param qualifiedName The qualified name of the document element to be 
+     *   created.
+     * @param doctype The type of document to be created or <code>null</code>.
+     *   When <code>doctype</code> is not <code>null</code>, its 
+     *   <code>Node.ownerDocument</code> attribute is set to the document 
+     *   being created.
+     * @return A new <code>Document</code> object.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified qualified name 
+     *   contains an illegal character.
+     *   <br>NAMESPACE_ERR: Raised if the <code>qualifiedName</code> is 
+     *   malformed, if the <code>qualifiedName</code> has a prefix and the 
+     *   <code>namespaceURI</code> is <code>null</code>, or if the 
+     *   <code>qualifiedName</code> has a prefix that is "xml" and the 
+     *   <code>namespaceURI</code> is different from "
+     *   http://www.w3.org/XML/1998/namespace" , or if the DOM 
+     *   implementation does not support the <code>"XML"</code> feature but 
+     *   a non-null namespace URI was provided, since namespaces were 
+     *   defined by XML.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>doctype</code> has already 
+     *   been used with a different document or was created from a different 
+     *   implementation.
+     *   <br>NOT_SUPPORTED_ERR: May be raised by DOM implementations which do 
+     *   not support the "XML" feature, if they choose not to support this 
+     *   method. Other features introduced in the future, by the DOM WG or 
+     *   in extensions defined by other groups, may also demand support for 
+     *   this method; please consult the definition of the feature to see if 
+     *   it requires this method. 
+     * @since DOM Level 2
+     */
+    public Document createDocument(String namespaceURI, 
+                                   String qualifiedName, 
+                                   DocumentType doctype)
+                                   throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/Document.java b/debian/dom2-bindings/org/w3c/dom/Document.java
new file mode 100644
index 0000000..79214e0
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/Document.java
@@ -0,0 +1,428 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>Document</code> interface represents the entire HTML or XML 
+ * document. Conceptually, it is the root of the document tree, and provides 
+ * the primary access to the document's data.
+ * <p>Since elements, text nodes, comments, processing instructions, etc. 
+ * cannot exist outside the context of a <code>Document</code>, the 
+ * <code>Document</code> interface also contains the factory methods needed 
+ * to create these objects. The <code>Node</code> objects created have a 
+ * <code>ownerDocument</code> attribute which associates them with the 
+ * <code>Document</code> within whose context they were created.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface Document extends Node {
+    /**
+     * The Document Type Declaration (see <code>DocumentType</code>) 
+     * associated with this document. For HTML documents as well as XML 
+     * documents without a document type declaration this returns 
+     * <code>null</code>. The DOM Level 2 does not support editing the 
+     * Document Type Declaration. <code>docType</code> cannot be altered in 
+     * any way, including through the use of methods inherited from the 
+     * <code>Node</code> interface, such as <code>insertNode</code> or 
+     * <code>removeNode</code>.
+     */
+    public DocumentType getDoctype();
+
+    /**
+     * The <code>DOMImplementation</code> object that handles this document. A 
+     * DOM application may use objects from multiple implementations.
+     */
+    public DOMImplementation getImplementation();
+
+    /**
+     * This is a convenience attribute that allows direct access to the child 
+     * node that is the root element of the document. For HTML documents, 
+     * this is the element with the tagName "HTML".
+     */
+    public Element getDocumentElement();
+
+    /**
+     * Creates an element of the type specified. Note that the instance 
+     * returned implements the <code>Element</code> interface, so attributes 
+     * can be specified directly on the returned object.
+     * <br>In addition, if there are known attributes with default values, 
+     * <code>Attr</code> nodes representing them are automatically created 
+     * and attached to the element.
+     * <br>To create an element with a qualified name and namespace URI, use 
+     * the <code>createElementNS</code> method.
+     * @param tagName The name of the element type to instantiate. For XML, 
+     *   this is case-sensitive. For HTML, the <code>tagName</code> 
+     *   parameter may be provided in any case, but it must be mapped to the 
+     *   canonical uppercase form by the DOM implementation.
+     * @return A new <code>Element</code> object with the 
+     *   <code>nodeName</code> attribute set to <code>tagName</code>, and 
+     *   <code>localName</code>, <code>prefix</code>, and 
+     *   <code>namespaceURI</code> set to <code>null</code>.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified name contains an 
+     *   illegal character.
+     */
+    public Element createElement(String tagName)
+                                 throws DOMException;
+
+    /**
+     * Creates an empty <code>DocumentFragment</code> object.
+     * @return A new <code>DocumentFragment</code>.
+     */
+    public DocumentFragment createDocumentFragment();
+
+    /**
+     * Creates a <code>Text</code> node given the specified string.
+     * @param data The data for the node.
+     * @return The new <code>Text</code> object.
+     */
+    public Text createTextNode(String data);
+
+    /**
+     * Creates a <code>Comment</code> node given the specified string.
+     * @param data The data for the node.
+     * @return The new <code>Comment</code> object.
+     */
+    public Comment createComment(String data);
+
+    /**
+     * Creates a <code>CDATASection</code> node whose value is the specified 
+     * string.
+     * @param data The data for the <code>CDATASection</code> contents.
+     * @return The new <code>CDATASection</code> object.
+     * @exception DOMException
+     *   NOT_SUPPORTED_ERR: Raised if this document is an HTML document.
+     */
+    public CDATASection createCDATASection(String data)
+                                           throws DOMException;
+
+    /**
+     * Creates a <code>ProcessingInstruction</code> node given the specified 
+     * name and data strings.
+     * @param target The target part of the processing instruction.
+     * @param data The data for the node.
+     * @return The new <code>ProcessingInstruction</code> object.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified target contains an 
+     *   illegal character.
+     *   <br>NOT_SUPPORTED_ERR: Raised if this document is an HTML document.
+     */
+    public ProcessingInstruction createProcessingInstruction(String target, 
+                                                             String data)
+                                                             throws DOMException;
+
+    /**
+     * Creates an <code>Attr</code> of the given name. Note that the 
+     * <code>Attr</code> instance can then be set on an <code>Element</code> 
+     * using the <code>setAttributeNode</code> method. 
+     * <br>To create an attribute with a qualified name and namespace URI, use 
+     * the <code>createAttributeNS</code> method.
+     * @param name The name of the attribute.
+     * @return A new <code>Attr</code> object with the <code>nodeName</code> 
+     *   attribute set to <code>name</code>, and <code>localName</code>, 
+     *   <code>prefix</code>, and <code>namespaceURI</code> set to 
+     *   <code>null</code>. The value of the attribute is the empty string.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified name contains an 
+     *   illegal character.
+     */
+    public Attr createAttribute(String name)
+                                throws DOMException;
+
+    /**
+     * Creates an <code>EntityReference</code> object. In addition, if the 
+     * referenced entity is known, the child list of the 
+     * <code>EntityReference</code> node is made the same as that of the 
+     * corresponding <code>Entity</code> node.If any descendant of the 
+     * <code>Entity</code> node has an unbound namespace prefix, the 
+     * corresponding descendant of the created <code>EntityReference</code> 
+     * node is also unbound; (its <code>namespaceURI</code> is 
+     * <code>null</code>). The DOM Level 2 does not support any mechanism to 
+     * resolve namespace prefixes.
+     * @param name The name of the entity to reference.
+     * @return The new <code>EntityReference</code> object.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified name contains an 
+     *   illegal character.
+     *   <br>NOT_SUPPORTED_ERR: Raised if this document is an HTML document.
+     */
+    public EntityReference createEntityReference(String name)
+                                                 throws DOMException;
+
+    /**
+     * Returns a <code>NodeList</code> of all the <code>Elements</code> with a 
+     * given tag name in the order in which they are encountered in a 
+     * preorder traversal of the <code>Document</code> tree.
+     * @param tagname The name of the tag to match on. The special value "*" 
+     *   matches all tags.
+     * @return A new <code>NodeList</code> object containing all the matched 
+     *   <code>Elements</code>.
+     */
+    public NodeList getElementsByTagName(String tagname);
+
+    /**
+     * Imports a node from another document to this document. The returned 
+     * node has no parent; (<code>parentNode</code> is <code>null</code>). 
+     * The source node is not altered or removed from the original document; 
+     * this method creates a new copy of the source node.
+     * <br>For all nodes, importing a node creates a node object owned by the 
+     * importing document, with attribute values identical to the source 
+     * node's <code>nodeName</code> and <code>nodeType</code>, plus the 
+     * attributes related to namespaces (<code>prefix</code>, 
+     * <code>localName</code>, and <code>namespaceURI</code>). As in the 
+     * <code>cloneNode</code> operation on a <code>Node</code>, the source 
+     * node is not altered.
+     * <br>Additional information is copied as appropriate to the 
+     * <code>nodeType</code>, attempting to mirror the behavior expected if 
+     * a fragment of XML or HTML source was copied from one document to 
+     * another, recognizing that the two documents may have different DTDs 
+     * in the XML case. The following list describes the specifics for each 
+     * type of node. 
+     * <dl>
+     * <dt>ATTRIBUTE_NODE</dt>
+     * <dd>The <code>ownerElement</code> attribute 
+     * is set to <code>null</code> and the <code>specified</code> flag is 
+     * set to <code>true</code> on the generated <code>Attr</code>. The 
+     * descendants of the source <code>Attr</code> are recursively imported 
+     * and the resulting nodes reassembled to form the corresponding subtree.
+     * Note that the <code>deep</code> parameter has no effect on 
+     * <code>Attr</code> nodes; they always carry their children with them 
+     * when imported.</dd>
+     * <dt>DOCUMENT_FRAGMENT_NODE</dt>
+     * <dd>If the <code>deep</code> option 
+     * was set to <code>true</code>, the descendants of the source element 
+     * are recursively imported and the resulting nodes reassembled to form 
+     * the corresponding subtree. Otherwise, this simply generates an empty 
+     * <code>DocumentFragment</code>.</dd>
+     * <dt>DOCUMENT_NODE</dt>
+     * <dd><code>Document</code> 
+     * nodes cannot be imported.</dd>
+     * <dt>DOCUMENT_TYPE_NODE</dt>
+     * <dd><code>DocumentType</code> 
+     * nodes cannot be imported.</dd>
+     * <dt>ELEMENT_NODE</dt>
+     * <dd>Specified attribute nodes of the 
+     * source element are imported, and the generated <code>Attr</code> 
+     * nodes are attached to the generated <code>Element</code>. Default 
+     * attributes are not copied, though if the document being imported into 
+     * defines default attributes for this element name, those are assigned. 
+     * If the <code>importNode</code> <code>deep</code> parameter was set to 
+     * <code>true</code>, the descendants of the source element are 
+     * recursively imported and the resulting nodes reassembled to form the 
+     * corresponding subtree.</dd>
+     * <dt>ENTITY_NODE</dt>
+     * <dd><code>Entity</code> nodes can be 
+     * imported, however in the current release of the DOM the 
+     * <code>DocumentType</code> is readonly. Ability to add these imported 
+     * nodes to a <code>DocumentType</code> will be considered for addition 
+     * to a future release of the DOM.On import, the <code>publicId</code>, 
+     * <code>systemId</code>, and <code>notationName</code> attributes are 
+     * copied. If a <code>deep</code> import is requested, the descendants 
+     * of the the source <code>Entity</code> are recursively imported and 
+     * the resulting nodes reassembled to form the corresponding subtree.</dd>
+     * <dt>
+     * ENTITY_REFERENCE_NODE</dt>
+     * <dd>Only the <code>EntityReference</code> itself is 
+     * copied, even if a <code>deep</code> import is requested, since the 
+     * source and destination documents might have defined the entity 
+     * differently. If the document being imported into provides a 
+     * definition for this entity name, its value is assigned.</dd>
+     * <dt>NOTATION_NODE</dt>
+     * <dd>
+     * <code>Notation</code> nodes can be imported, however in the current 
+     * release of the DOM the <code>DocumentType</code> is readonly. Ability 
+     * to add these imported nodes to a <code>DocumentType</code> will be 
+     * considered for addition to a future release of the DOM.On import, the 
+     * <code>publicId</code> and <code>systemId</code> attributes are copied.
+     * Note that the <code>deep</code> parameter has no effect on 
+     * <code>Notation</code> nodes since they never have any children.</dd>
+     * <dt>
+     * PROCESSING_INSTRUCTION_NODE</dt>
+     * <dd>The imported node copies its 
+     * <code>target</code> and <code>data</code> values from those of the 
+     * source node.</dd>
+     * <dt>TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE</dt>
+     * <dd>These three 
+     * types of nodes inheriting from <code>CharacterData</code> copy their 
+     * <code>data</code> and <code>length</code> attributes from those of 
+     * the source node.</dd>
+     * </dl> 
+     * @param importedNode The node to import.
+     * @param deep If <code>true</code>, recursively import the subtree under 
+     *   the specified node; if <code>false</code>, import only the node 
+     *   itself, as explained above. This has no effect on <code>Attr</code>
+     *   , <code>EntityReference</code>, and <code>Notation</code> nodes.
+     * @return The imported node that belongs to this <code>Document</code>.
+     * @exception DOMException
+     *   NOT_SUPPORTED_ERR: Raised if the type of node being imported is not 
+     *   supported.
+     * @since DOM Level 2
+     */
+    public Node importNode(Node importedNode, 
+                           boolean deep)
+                           throws DOMException;
+
+    /**
+     * Creates an element of the given qualified name and namespace URI.
+     * @param namespaceURI The namespace URI of the element to create.
+     * @param qualifiedName The qualified name of the element type to 
+     *   instantiate.
+     * @return A new <code>Element</code> object with the following 
+     *   attributes:
+     * <table border='1'>
+     * <tr>
+     * <th>Attribute</th>
+     * <th>Value</th>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Node.nodeName</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>
+     *   <code>qualifiedName</code></td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Node.namespaceURI</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>
+     *   <code>namespaceURI</code></td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Node.prefix</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>prefix, extracted 
+     *   from <code>qualifiedName</code>, or <code>null</code> if there is 
+     *   no prefix</td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Node.localName</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>local name, extracted from 
+     *   <code>qualifiedName</code></td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Element.tagName</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>
+     *   <code>qualifiedName</code></td>
+     * </tr>
+     * </table>
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified qualified name 
+     *   contains an illegal character, per the XML 1.0 specification .
+     *   <br>NAMESPACE_ERR: Raised if the <code>qualifiedName</code> is 
+     *   malformed per the Namespaces in XML specification, if the 
+     *   <code>qualifiedName</code> has a prefix and the 
+     *   <code>namespaceURI</code> is <code>null</code>, or if the 
+     *   <code>qualifiedName</code> has a prefix that is "xml" and the 
+     *   <code>namespaceURI</code> is different from "
+     *   http://www.w3.org/XML/1998/namespace" .
+     *   <br>NOT_SUPPORTED_ERR: Always thrown if the current document does not 
+     *   support the <code>"XML"</code> feature, since namespaces were 
+     *   defined by XML.
+     * @since DOM Level 2
+     */
+    public Element createElementNS(String namespaceURI, 
+                                   String qualifiedName)
+                                   throws DOMException;
+
+    /**
+     * Creates an attribute of the given qualified name and namespace URI.
+     * @param namespaceURI The namespace URI of the attribute to create.
+     * @param qualifiedName The qualified name of the attribute to 
+     *   instantiate.
+     * @return A new <code>Attr</code> object with the following attributes:
+     * <table border='1'>
+     * <tr>
+     * <th>
+     *   Attribute</th>
+     * <th>Value</th>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Node.nodeName</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>qualifiedName</td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'>
+     *   <code>Node.namespaceURI</code></td>
+     * <td valign='top' rowspan='1' colspan='1'><code>namespaceURI</code></td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'>
+     *   <code>Node.prefix</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>prefix, extracted from 
+     *   <code>qualifiedName</code>, or <code>null</code> if there is no 
+     *   prefix</td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Node.localName</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>local name, extracted from 
+     *   <code>qualifiedName</code></td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Attr.name</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>
+     *   <code>qualifiedName</code></td>
+     * </tr>
+     * <tr>
+     * <td valign='top' rowspan='1' colspan='1'><code>Node.nodeValue</code></td>
+     * <td valign='top' rowspan='1' colspan='1'>the empty 
+     *   string</td>
+     * </tr>
+     * </table>
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified qualified name 
+     *   contains an illegal character, per the XML 1.0 specification .
+     *   <br>NAMESPACE_ERR: Raised if the <code>qualifiedName</code> is 
+     *   malformed per the Namespaces in XML specification, if the 
+     *   <code>qualifiedName</code> has a prefix and the 
+     *   <code>namespaceURI</code> is <code>null</code>, if the 
+     *   <code>qualifiedName</code> has a prefix that is "xml" and the 
+     *   <code>namespaceURI</code> is different from "
+     *   http://www.w3.org/XML/1998/namespace", or if the 
+     *   <code>qualifiedName</code>, or its prefix, is "xmlns" and the 
+     *   <code>namespaceURI</code> is different from "
+     *   http://www.w3.org/2000/xmlns/".
+     *   <br>NOT_SUPPORTED_ERR: Always thrown if the current document does not 
+     *   support the <code>"XML"</code> feature, since namespaces were 
+     *   defined by XML.
+     * @since DOM Level 2
+     */
+    public Attr createAttributeNS(String namespaceURI, 
+                                  String qualifiedName)
+                                  throws DOMException;
+
+    /**
+     * Returns a <code>NodeList</code> of all the <code>Elements</code> with a 
+     * given local name and namespace URI in the order in which they are 
+     * encountered in a preorder traversal of the <code>Document</code> tree.
+     * @param namespaceURI The namespace URI of the elements to match on. The 
+     *   special value "*" matches all namespaces.
+     * @param localName The local name of the elements to match on. The 
+     *   special value "*" matches all local names.
+     * @return A new <code>NodeList</code> object containing all the matched 
+     *   <code>Elements</code>.
+     * @since DOM Level 2
+     */
+    public NodeList getElementsByTagNameNS(String namespaceURI, 
+                                           String localName);
+
+    /**
+     * Returns the <code>Element</code> whose <code>ID</code> is given by 
+     * <code>elementId</code>. If no such element exists, returns 
+     * <code>null</code>. Behavior is not defined if more than one element 
+     * has this <code>ID</code>. The DOM implementation must have 
+     * information that says which attributes are of type ID. Attributes 
+     * with the name "ID" are not of type ID unless so defined. 
+     * Implementations that do not know whether attributes are of type ID or 
+     * not are expected to return <code>null</code>. 
+     * @param elementId The unique <code>id</code> value for an element.
+     * @return The matching element.
+     * @since DOM Level 2
+     */
+    public Element getElementById(String elementId);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/DocumentFragment.java b/debian/dom2-bindings/org/w3c/dom/DocumentFragment.java
new file mode 100644
index 0000000..6ade30c
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/DocumentFragment.java
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * <code>DocumentFragment</code> is a "lightweight" or "minimal" 
+ * <code>Document</code> object. It is very common to want to be able to 
+ * extract a portion of a document's tree or to create a new fragment of a 
+ * document. Imagine implementing a user command like cut or rearranging a 
+ * document by moving fragments around. It is desirable to have an object 
+ * which can hold such fragments and it is quite natural to use a Node for 
+ * this purpose. While it is true that a <code>Document</code> object could 
+ * fulfill this role, a <code>Document</code> object can potentially be a 
+ * heavyweight object, depending on the underlying implementation. What is 
+ * really needed for this is a very lightweight object. 
+ * <code>DocumentFragment</code> is such an object.
+ * <p>Furthermore, various operations -- such as inserting nodes as children 
+ * of another <code>Node</code> -- may take <code>DocumentFragment</code> 
+ * objects as arguments; this results in all the child nodes of the 
+ * <code>DocumentFragment</code> being moved to the child list of this node.
+ * <p>The children of a <code>DocumentFragment</code> node are zero or more 
+ * nodes representing the tops of any sub-trees defining the structure of 
+ * the document. <code>DocumentFragment</code> nodes do not need to be 
+ * well-formed XML documents (although they do need to follow the rules 
+ * imposed upon well-formed XML parsed entities, which can have multiple top 
+ * nodes). For example, a <code>DocumentFragment</code> might have only one 
+ * child and that child node could be a <code>Text</code> node. Such a 
+ * structure model represents neither an HTML document nor a well-formed XML 
+ * document.
+ * <p>When a <code>DocumentFragment</code> is inserted into a 
+ * <code>Document</code> (or indeed any other <code>Node</code> that may 
+ * take children) the children of the <code>DocumentFragment</code> and not 
+ * the <code>DocumentFragment</code> itself are inserted into the 
+ * <code>Node</code>. This makes the <code>DocumentFragment</code> very 
+ * useful when the user wishes to create nodes that are siblings; the 
+ * <code>DocumentFragment</code> acts as the parent of these nodes so that 
+ * the user can use the standard methods from the <code>Node</code> 
+ * interface, such as <code>insertBefore</code> and <code>appendChild</code>.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface DocumentFragment extends Node {
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/DocumentType.java b/debian/dom2-bindings/org/w3c/dom/DocumentType.java
new file mode 100644
index 0000000..86c312b
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/DocumentType.java
@@ -0,0 +1,80 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * Each <code>Document</code> has a <code>doctype</code> attribute whose value 
+ * is either <code>null</code> or a <code>DocumentType</code> object. The 
+ * <code>DocumentType</code> interface in the DOM Core provides an interface 
+ * to the list of entities that are defined for the document, and little 
+ * else because the effect of namespaces and the various XML schema efforts 
+ * on DTD representation are not clearly understood as of this writing.
+ * <p>The DOM Level 2 doesn't support editing <code>DocumentType</code> nodes.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface DocumentType extends Node {
+    /**
+     * The name of DTD; i.e., the name immediately following the 
+     * <code>DOCTYPE</code> keyword.
+     */
+    public String getName();
+
+    /**
+     * A <code>NamedNodeMap</code> containing the general entities, both 
+     * external and internal, declared in the DTD. Parameter entities are 
+     * not contained. Duplicates are discarded. For example in: 
+     * <pre><!DOCTYPE 
+     * ex SYSTEM "ex.dtd" [ <!ENTITY foo "foo"> <!ENTITY bar 
+     * "bar"> <!ENTITY bar "bar2"> <!ENTITY % baz "baz"> 
+     * ]> <ex/></pre>
+     *  the interface provides access to <code>foo</code> 
+     * and the first declaration of <code>bar</code> but not the second 
+     * declaration of <code>bar</code> or <code>baz</code>. Every node in 
+     * this map also implements the <code>Entity</code> interface.
+     * <br>The DOM Level 2 does not support editing entities, therefore 
+     * <code>entities</code> cannot be altered in any way.
+     */
+    public NamedNodeMap getEntities();
+
+    /**
+     * A <code>NamedNodeMap</code> containing the notations declared in the 
+     * DTD. Duplicates are discarded. Every node in this map also implements 
+     * the <code>Notation</code> interface.
+     * <br>The DOM Level 2 does not support editing notations, therefore 
+     * <code>notations</code> cannot be altered in any way.
+     */
+    public NamedNodeMap getNotations();
+
+    /**
+     * The public identifier of the external subset.
+     * @since DOM Level 2
+     */
+    public String getPublicId();
+
+    /**
+     * The system identifier of the external subset.
+     * @since DOM Level 2
+     */
+    public String getSystemId();
+
+    /**
+     * The internal subset as a string, or <code>null</code> if there is none. 
+     * This is does not contain the delimiting square brackets.The actual 
+     * content returned depends on how much information is available to the 
+     * implementation. This may vary depending on various parameters, 
+     * including the XML processor used to build the document.
+     * @since DOM Level 2
+     */
+    public String getInternalSubset();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/Element.java b/debian/dom2-bindings/org/w3c/dom/Element.java
new file mode 100644
index 0000000..614ca87
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/Element.java
@@ -0,0 +1,322 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>Element</code> interface represents an element in an HTML or XML 
+ * document. Elements may have attributes associated with them; since the 
+ * <code>Element</code> interface inherits from <code>Node</code>, the 
+ * generic <code>Node</code> interface attribute <code>attributes</code> may 
+ * be used to retrieve the set of all attributes for an element. There are 
+ * methods on the <code>Element</code> interface to retrieve either an 
+ * <code>Attr</code> object by name or an attribute value by name. In XML, 
+ * where an attribute value may contain entity references, an 
+ * <code>Attr</code> object should be retrieved to examine the possibly 
+ * fairly complex sub-tree representing the attribute value. On the other 
+ * hand, in HTML, where all attributes have simple string values, methods to 
+ * directly access an attribute value can safely be used as a convenience.In 
+ * DOM Level 2, the method <code>normalize</code> is inherited from the 
+ * <code>Node</code> interface where it was moved.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface Element extends Node {
+    /**
+     * The name of the element. For example, in: 
+     * <pre> <elementExample 
+     * id="demo"> ... </elementExample> , </pre>
+     *  <code>tagName</code> has 
+     * the value <code>"elementExample"</code>. Note that this is 
+     * case-preserving in XML, as are all of the operations of the DOM. The 
+     * HTML DOM returns the <code>tagName</code> of an HTML element in the 
+     * canonical uppercase form, regardless of the case in the source HTML 
+     * document.
+     */
+    public String getTagName();
+
+    /**
+     * Retrieves an attribute value by name.
+     * @param name The name of the attribute to retrieve.
+     * @return The <code>Attr</code> value as a string, or the empty string 
+     *   if that attribute does not have a specified or default value.
+     */
+    public String getAttribute(String name);
+
+    /**
+     * Adds a new attribute. If an attribute with that name is already present 
+     * in the element, its value is changed to be that of the value 
+     * parameter. This value is a simple string; it is not parsed as it is 
+     * being set. So any markup (such as syntax to be recognized as an 
+     * entity reference) is treated as literal text, and needs to be 
+     * appropriately escaped by the implementation when it is written out. 
+     * In order to assign an attribute value that contains entity 
+     * references, the user must create an <code>Attr</code> node plus any 
+     * <code>Text</code> and <code>EntityReference</code> nodes, build the 
+     * appropriate subtree, and use <code>setAttributeNode</code> to assign 
+     * it as the value of an attribute.
+     * <br>To set an attribute with a qualified name and namespace URI, use 
+     * the <code>setAttributeNS</code> method.
+     * @param name The name of the attribute to create or alter.
+     * @param value Value to set in string form.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified name contains an 
+     *   illegal character.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     */
+    public void setAttribute(String name, 
+                             String value)
+                             throws DOMException;
+
+    /**
+     * Removes an attribute by name. If the removed attribute is known to have 
+     * a default value, an attribute immediately appears containing the 
+     * default value as well as the corresponding namespace URI, local name, 
+     * and prefix when applicable.
+     * <br>To remove an attribute by local name and namespace URI, use the 
+     * <code>removeAttributeNS</code> method.
+     * @param name The name of the attribute to remove.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     */
+    public void removeAttribute(String name)
+                                throws DOMException;
+
+    /**
+     * Retrieves an attribute node by name.
+     * <br>To retrieve an attribute node by qualified name and namespace URI, 
+     * use the <code>getAttributeNodeNS</code> method.
+     * @param name The name (<code>nodeName</code>) of the attribute to 
+     *   retrieve.
+     * @return The <code>Attr</code> node with the specified name (
+     *   <code>nodeName</code>) or <code>null</code> if there is no such 
+     *   attribute.
+     */
+    public Attr getAttributeNode(String name);
+
+    /**
+     * Adds a new attribute node. If an attribute with that name (
+     * <code>nodeName</code>) is already present in the element, it is 
+     * replaced by the new one.
+     * <br>To add a new attribute node with a qualified name and namespace 
+     * URI, use the <code>setAttributeNodeNS</code> method.
+     * @param newAttr The <code>Attr</code> node to add to the attribute list.
+     * @return If the <code>newAttr</code> attribute replaces an existing 
+     *   attribute, the replaced <code>Attr</code> node is returned, 
+     *   otherwise <code>null</code> is returned.
+     * @exception DOMException
+     *   WRONG_DOCUMENT_ERR: Raised if <code>newAttr</code> was created from a 
+     *   different document than the one that created the element.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     *   <br>INUSE_ATTRIBUTE_ERR: Raised if <code>newAttr</code> is already an 
+     *   attribute of another <code>Element</code> object. The DOM user must 
+     *   explicitly clone <code>Attr</code> nodes to re-use them in other 
+     *   elements.
+     */
+    public Attr setAttributeNode(Attr newAttr)
+                                 throws DOMException;
+
+    /**
+     * Removes the specified attribute node. If the removed <code>Attr</code> 
+     * has a default value it is immediately replaced. The replacing 
+     * attribute has the same namespace URI and local name, as well as the 
+     * original prefix, when applicable.
+     * @param oldAttr The <code>Attr</code> node to remove from the attribute 
+     *   list.
+     * @return The <code>Attr</code> node that was removed.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     *   <br>NOT_FOUND_ERR: Raised if <code>oldAttr</code> is not an attribute 
+     *   of the element.
+     */
+    public Attr removeAttributeNode(Attr oldAttr)
+                                    throws DOMException;
+
+    /**
+     * Returns a <code>NodeList</code> of all descendant <code>Elements</code> 
+     * with a given tag name, in the order in which they are encountered in 
+     * a preorder traversal of this <code>Element</code> tree.
+     * @param name The name of the tag to match on. The special value "*" 
+     *   matches all tags.
+     * @return A list of matching <code>Element</code> nodes.
+     */
+    public NodeList getElementsByTagName(String name);
+
+    /**
+     * Retrieves an attribute value by local name and namespace URI.
+     * <br>Documents which do not support the "XML" feature will permit only 
+     * the DOM Level 1 calls for creating/setting elements and attributes. 
+     * Hence, if you specify a non-null namespace URI, these DOMs will never 
+     * find a matching node.
+     * @param namespaceURI The namespace URI of the attribute to retrieve.
+     * @param localName The local name of the attribute to retrieve.
+     * @return The <code>Attr</code> value as a string, or the empty string 
+     *   if that attribute does not have a specified or default value.
+     * @since DOM Level 2
+     */
+    public String getAttributeNS(String namespaceURI, 
+                                 String localName);
+
+    /**
+     * Adds a new attribute. If an attribute with the same local name and 
+     * namespace URI is already present on the element, its prefix is 
+     * changed to be the prefix part of the <code>qualifiedName</code>, and 
+     * its value is changed to be the <code>value</code> parameter. This 
+     * value is a simple string; it is not parsed as it is being set. So any 
+     * markup (such as syntax to be recognized as an entity reference) is 
+     * treated as literal text, and needs to be appropriately escaped by the 
+     * implementation when it is written out. In order to assign an 
+     * attribute value that contains entity references, the user must create 
+     * an <code>Attr</code> node plus any <code>Text</code> and 
+     * <code>EntityReference</code> nodes, build the appropriate subtree, 
+     * and use <code>setAttributeNodeNS</code> or 
+     * <code>setAttributeNode</code> to assign it as the value of an 
+     * attribute.
+     * @param namespaceURI The namespace URI of the attribute to create or 
+     *   alter.
+     * @param qualifiedName The qualified name of the attribute to create or 
+     *   alter.
+     * @param value The value to set in string form.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified qualified name 
+     *   contains an illegal character, per the XML 1.0 specification .
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     *   <br>NAMESPACE_ERR: Raised if the <code>qualifiedName</code> is 
+     *   malformed per the Namespaces in XML specification, if the 
+     *   <code>qualifiedName</code> has a prefix and the 
+     *   <code>namespaceURI</code> is <code>null</code>, if the 
+     *   <code>qualifiedName</code> has a prefix that is "xml" and the 
+     *   <code>namespaceURI</code> is different from "
+     *   http://www.w3.org/XML/1998/namespace", or if the 
+     *   <code>qualifiedName</code>, or its prefix, is "xmlns" and the 
+     *   <code>namespaceURI</code> is different from "
+     *   http://www.w3.org/2000/xmlns/".
+     *   <br>NOT_SUPPORTED_ERR: Always thrown if the current document does not 
+     *   support the <code>"XML"</code> feature, since namespaces were 
+     *   defined by XML.
+     * @since DOM Level 2
+     */
+    public void setAttributeNS(String namespaceURI, 
+                               String qualifiedName, 
+                               String value)
+                               throws DOMException;
+
+    /**
+     * Removes an attribute by local name and namespace URI. If the removed 
+     * attribute has a default value it is immediately replaced. The 
+     * replacing attribute has the same namespace URI and local name, as 
+     * well as the original prefix.
+     * <br>Documents which do not support the "XML" feature will permit only 
+     * the DOM Level 1 calls for creating/setting elements and attributes. 
+     * Hence, if you specify a non-null namespace URI, these DOMs will never 
+     * find a matching node.
+     * @param namespaceURI The namespace URI of the attribute to remove.
+     * @param localName The local name of the attribute to remove.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     * @since DOM Level 2
+     */
+    public void removeAttributeNS(String namespaceURI, 
+                                  String localName)
+                                  throws DOMException;
+
+    /**
+     * Retrieves an <code>Attr</code> node by local name and namespace URI.
+     * <br>Documents which do not support the "XML" feature will permit only 
+     * the DOM Level 1 calls for creating/setting elements and attributes. 
+     * Hence, if you specify a non-null namespace URI, these DOMs will never 
+     * find a matching node.
+     * @param namespaceURI The namespace URI of the attribute to retrieve.
+     * @param localName The local name of the attribute to retrieve.
+     * @return The <code>Attr</code> node with the specified attribute local 
+     *   name and namespace URI or <code>null</code> if there is no such 
+     *   attribute.
+     * @since DOM Level 2
+     */
+    public Attr getAttributeNodeNS(String namespaceURI, 
+                                   String localName);
+
+    /**
+     * Adds a new attribute. If an attribute with that local name and that 
+     * namespace URI is already present in the element, it is replaced by 
+     * the new one.
+     * @param newAttr The <code>Attr</code> node to add to the attribute list.
+     * @return If the <code>newAttr</code> attribute replaces an existing 
+     *   attribute with the same local name and namespace URI, the replaced 
+     *   <code>Attr</code> node is returned, otherwise <code>null</code> is 
+     *   returned.
+     * @exception DOMException
+     *   WRONG_DOCUMENT_ERR: Raised if <code>newAttr</code> was created from a 
+     *   different document than the one that created the element.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     *   <br>INUSE_ATTRIBUTE_ERR: Raised if <code>newAttr</code> is already an 
+     *   attribute of another <code>Element</code> object. The DOM user must 
+     *   explicitly clone <code>Attr</code> nodes to re-use them in other 
+     *   elements.
+     *   <br>NOT_SUPPORTED_ERR: Always thrown if the current document does not 
+     *   support the <code>"XML"</code> feature, since namespaces were 
+     *   defined by XML.
+     * @since DOM Level 2
+     */
+    public Attr setAttributeNodeNS(Attr newAttr)
+                                   throws DOMException;
+
+    /**
+     * Returns a <code>NodeList</code> of all the descendant 
+     * <code>Elements</code> with a given local name and namespace URI in 
+     * the order in which they are encountered in a preorder traversal of 
+     * this <code>Element</code> tree.
+     * <br>Documents which do not support the "XML" feature will permit only 
+     * the DOM Level 1 calls for creating/setting elements and attributes. 
+     * Hence, if you specify a non-null namespace URI, these DOMs will never 
+     * find a matching node.
+     * @param namespaceURI The namespace URI of the elements to match on. The 
+     *   special value "*" matches all namespaces.
+     * @param localName The local name of the elements to match on. The 
+     *   special value "*" matches all local names.
+     * @return A new <code>NodeList</code> object containing all the matched 
+     *   <code>Elements</code>.
+     * @since DOM Level 2
+     */
+    public NodeList getElementsByTagNameNS(String namespaceURI, 
+                                           String localName);
+
+    /**
+     * Returns <code>true</code> when an attribute with a given name is 
+     * specified on this element or has a default value, <code>false</code> 
+     * otherwise.
+     * @param name The name of the attribute to look for.
+     * @return <code>true</code> if an attribute with the given name is 
+     *   specified on this element or has a default value, <code>false</code>
+     *    otherwise.
+     * @since DOM Level 2
+     */
+    public boolean hasAttribute(String name);
+
+    /**
+     * Returns <code>true</code> when an attribute with a given local name and 
+     * namespace URI is specified on this element or has a default value, 
+     * <code>false</code> otherwise.
+     * <br>Documents which do not support the "XML" feature will permit only 
+     * the DOM Level 1 calls for creating/setting elements and attributes. 
+     * Hence, if you specify a non-null namespace URI, these DOMs will never 
+     * find a matching node.
+     * @param namespaceURI The namespace URI of the attribute to look for.
+     * @param localName The local name of the attribute to look for.
+     * @return <code>true</code> if an attribute with the given local name 
+     *   and namespace URI is specified or has a default value on this 
+     *   element, <code>false</code> otherwise.
+     * @since DOM Level 2
+     */
+    public boolean hasAttributeNS(String namespaceURI, 
+                                  String localName);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/Entity.java b/debian/dom2-bindings/org/w3c/dom/Entity.java
new file mode 100644
index 0000000..11bd0df
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/Entity.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * This interface represents an entity, either parsed or unparsed, in an XML 
+ * document. Note that this models the entity itself not the entity 
+ * declaration. <code>Entity</code> declaration modeling has been left for a 
+ * later Level of the DOM specification.
+ * <p>The <code>nodeName</code> attribute that is inherited from 
+ * <code>Node</code> contains the name of the entity.
+ * <p>An XML processor may choose to completely expand entities before the 
+ * structure model is passed to the DOM; in this case there will be no 
+ * <code>EntityReference</code> nodes in the document tree.
+ * <p>XML does not mandate that a non-validating XML processor read and 
+ * process entity declarations made in the external subset or declared in 
+ * external parameter entities. This means that parsed entities declared in 
+ * the external subset need not be expanded by some classes of applications, 
+ * and that the replacement value of the entity may not be available. When 
+ * the replacement value is available, the corresponding <code>Entity</code> 
+ * node's child list represents the structure of that replacement text. 
+ * Otherwise, the child list is empty.
+ * <p>The DOM Level 2 does not support editing <code>Entity</code> nodes; if a 
+ * user wants to make changes to the contents of an <code>Entity</code>, 
+ * every related <code>EntityReference</code> node has to be replaced in the 
+ * structure model by a clone of the <code>Entity</code>'s contents, and 
+ * then the desired changes must be made to each of those clones instead. 
+ * <code>Entity</code> nodes and all their descendants are readonly.
+ * <p>An <code>Entity</code> node does not have any parent.If the entity 
+ * contains an unbound namespace prefix, the <code>namespaceURI</code> of 
+ * the corresponding node in the <code>Entity</code> node subtree is 
+ * <code>null</code>. The same is true for <code>EntityReference</code> 
+ * nodes that refer to this entity, when they are created using the 
+ * <code>createEntityReference</code> method of the <code>Document</code> 
+ * interface. The DOM Level 2 does not support any mechanism to resolve 
+ * namespace prefixes.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface Entity extends Node {
+    /**
+     * The public identifier associated with the entity, if specified. If the 
+     * public identifier was not specified, this is <code>null</code>.
+     */
+    public String getPublicId();
+
+    /**
+     * The system identifier associated with the entity, if specified. If the 
+     * system identifier was not specified, this is <code>null</code>.
+     */
+    public String getSystemId();
+
+    /**
+     * For unparsed entities, the name of the notation for the entity. For 
+     * parsed entities, this is <code>null</code>.
+     */
+    public String getNotationName();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/EntityReference.java b/debian/dom2-bindings/org/w3c/dom/EntityReference.java
new file mode 100644
index 0000000..ff3cf9d
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/EntityReference.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * <code>EntityReference</code> objects may be inserted into the structure 
+ * model when an entity reference is in the source document, or when the 
+ * user wishes to insert an entity reference. Note that character references 
+ * and references to predefined entities are considered to be expanded by 
+ * the HTML or XML processor so that characters are represented by their 
+ * Unicode equivalent rather than by an entity reference. Moreover, the XML 
+ * processor may completely expand references to entities while building the 
+ * structure model, instead of providing <code>EntityReference</code> 
+ * objects. If it does provide such objects, then for a given 
+ * <code>EntityReference</code> node, it may be that there is no 
+ * <code>Entity</code> node representing the referenced entity. If such an 
+ * <code>Entity</code> exists, then the subtree of the 
+ * <code>EntityReference</code> node is in general a copy of the 
+ * <code>Entity</code> node subtree. However, this may not be true when an 
+ * entity contains an unbound namespace prefix. In such a case, because the 
+ * namespace prefix resolution depends on where the entity reference is, the 
+ * descendants of the <code>EntityReference</code> node may be bound to 
+ * different namespace URIs.
+ * <p>As for <code>Entity</code> nodes, <code>EntityReference</code> nodes and 
+ * all their descendants are readonly.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface EntityReference extends Node {
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/NamedNodeMap.java b/debian/dom2-bindings/org/w3c/dom/NamedNodeMap.java
new file mode 100644
index 0000000..8437366
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/NamedNodeMap.java
@@ -0,0 +1,174 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * Objects implementing the <code>NamedNodeMap</code> interface are used to 
+ * represent collections of nodes that can be accessed by name. Note that 
+ * <code>NamedNodeMap</code> does not inherit from <code>NodeList</code>; 
+ * <code>NamedNodeMaps</code> are not maintained in any particular order. 
+ * Objects contained in an object implementing <code>NamedNodeMap</code> may 
+ * also be accessed by an ordinal index, but this is simply to allow 
+ * convenient enumeration of the contents of a <code>NamedNodeMap</code>, 
+ * and does not imply that the DOM specifies an order to these Nodes. 
+ * <p><code>NamedNodeMap</code> objects in the DOM are live.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface NamedNodeMap {
+    /**
+     * Retrieves a node specified by name.
+     * @param name The <code>nodeName</code> of a node to retrieve.
+     * @return A <code>Node</code> (of any type) with the specified 
+     *   <code>nodeName</code>, or <code>null</code> if it does not identify 
+     *   any node in this map.
+     */
+    public Node getNamedItem(String name);
+
+    /**
+     * Adds a node using its <code>nodeName</code> attribute. If a node with 
+     * that name is already present in this map, it is replaced by the new 
+     * one.
+     * <br>As the <code>nodeName</code> attribute is used to derive the name 
+     * which the node must be stored under, multiple nodes of certain types 
+     * (those that have a "special" string value) cannot be stored as the 
+     * names would clash. This is seen as preferable to allowing nodes to be 
+     * aliased.
+     * @param arg A node to store in this map. The node will later be 
+     *   accessible using the value of its <code>nodeName</code> attribute.
+     * @return If the new <code>Node</code> replaces an existing node the 
+     *   replaced <code>Node</code> is returned, otherwise <code>null</code> 
+     *   is returned.
+     * @exception DOMException
+     *   WRONG_DOCUMENT_ERR: Raised if <code>arg</code> was created from a 
+     *   different document than the one that created this map.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly.
+     *   <br>INUSE_ATTRIBUTE_ERR: Raised if <code>arg</code> is an 
+     *   <code>Attr</code> that is already an attribute of another 
+     *   <code>Element</code> object. The DOM user must explicitly clone 
+     *   <code>Attr</code> nodes to re-use them in other elements.
+     *   <br>HIERARCHY_REQUEST_ERR: Raised if an attempt is made to add a node 
+     *   doesn't belong in this NamedNodeMap. Examples would include trying 
+     *   to insert something other than an Attr node into an Element's map 
+     *   of attributes, or a non-Entity node into the DocumentType's map of 
+     *   Entities.
+     */
+    public Node setNamedItem(Node arg)
+                             throws DOMException;
+
+    /**
+     * Removes a node specified by name. When this map contains the attributes 
+     * attached to an element, if the removed attribute is known to have a 
+     * default value, an attribute immediately appears containing the 
+     * default value as well as the corresponding namespace URI, local name, 
+     * and prefix when applicable.
+     * @param name The <code>nodeName</code> of the node to remove.
+     * @return The node removed from this map if a node with such a name 
+     *   exists.
+     * @exception DOMException
+     *   NOT_FOUND_ERR: Raised if there is no node named <code>name</code> in 
+     *   this map.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly.
+     */
+    public Node removeNamedItem(String name)
+                                throws DOMException;
+
+    /**
+     * Returns the <code>index</code>th item in the map. If <code>index</code> 
+     * is greater than or equal to the number of nodes in this map, this 
+     * returns <code>null</code>.
+     * @param index Index into this map.
+     * @return The node at the <code>index</code>th position in the map, or 
+     *   <code>null</code> if that is not a valid index.
+     */
+    public Node item(int index);
+
+    /**
+     * The number of nodes in this map. The range of valid child node indices 
+     * is <code>0</code> to <code>length-1</code> inclusive.
+     */
+    public int getLength();
+
+    /**
+     * Retrieves a node specified by local name and namespace URI.
+     * <br>Documents which do not support the "XML" feature will permit only 
+     * the DOM Level 1 calls for creating/setting elements and attributes. 
+     * Hence, if you specify a non-null namespace URI, these DOMs will never 
+     * find a matching node.
+     * @param namespaceURI The namespace URI of the node to retrieve.
+     * @param localName The local name of the node to retrieve.
+     * @return A <code>Node</code> (of any type) with the specified local 
+     *   name and namespace URI, or <code>null</code> if they do not 
+     *   identify any node in this map.
+     * @since DOM Level 2
+     */
+    public Node getNamedItemNS(String namespaceURI, 
+                               String localName);
+
+    /**
+     * Adds a node using its <code>namespaceURI</code> and 
+     * <code>localName</code>. If a node with that namespace URI and that 
+     * local name is already present in this map, it is replaced by the new 
+     * one.
+     * @param arg A node to store in this map. The node will later be 
+     *   accessible using the value of its <code>namespaceURI</code> and 
+     *   <code>localName</code> attributes.
+     * @return If the new <code>Node</code> replaces an existing node the 
+     *   replaced <code>Node</code> is returned, otherwise <code>null</code> 
+     *   is returned.
+     * @exception DOMException
+     *   WRONG_DOCUMENT_ERR: Raised if <code>arg</code> was created from a 
+     *   different document than the one that created this map.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly.
+     *   <br>INUSE_ATTRIBUTE_ERR: Raised if <code>arg</code> is an 
+     *   <code>Attr</code> that is already an attribute of another 
+     *   <code>Element</code> object. The DOM user must explicitly clone 
+     *   <code>Attr</code> nodes to re-use them in other elements.
+     *   <br>HIERARCHY_REQUEST_ERR: Raised if an attempt is made to add a node 
+     *   doesn't belong in this NamedNodeMap. Examples would include trying 
+     *   to insert something other than an Attr node into an Element's map 
+     *   of attributes, or a non-Entity node into the DocumentType's map of 
+     *   Entities.
+     *   <br>NOT_SUPPORTED_ERR: Always thrown if the current document does not 
+     *   support the <code>"XML"</code> feature, since namespaces were 
+     *   defined by XML.
+     * @since DOM Level 2
+     */
+    public Node setNamedItemNS(Node arg)
+                               throws DOMException;
+
+    /**
+     * Removes a node specified by local name and namespace URI. A removed 
+     * attribute may be known to have a default value when this map contains 
+     * the attributes attached to an element, as returned by the attributes 
+     * attribute of the <code>Node</code> interface. If so, an attribute 
+     * immediately appears containing the default value as well as the 
+     * corresponding namespace URI, local name, and prefix when applicable.
+     * <br>Documents which do not support the "XML" feature will permit only 
+     * the DOM Level 1 calls for creating/setting elements and attributes. 
+     * Hence, if you specify a non-null namespace URI, these DOMs will never 
+     * find a matching node.
+     * @param namespaceURI The namespace URI of the node to remove.
+     * @param localName The local name of the node to remove.
+     * @return The node removed from this map if a node with such a local 
+     *   name and namespace URI exists.
+     * @exception DOMException
+     *   NOT_FOUND_ERR: Raised if there is no node with the specified 
+     *   <code>namespaceURI</code> and <code>localName</code> in this map.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly.
+     * @since DOM Level 2
+     */
+    public Node removeNamedItemNS(String namespaceURI, 
+                                  String localName)
+                                  throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/Node.java b/debian/dom2-bindings/org/w3c/dom/Node.java
new file mode 100644
index 0000000..56ed30a
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/Node.java
@@ -0,0 +1,526 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>Node</code> interface is the primary datatype for the entire 
+ * Document Object Model. It represents a single node in the document tree. 
+ * While all objects implementing the <code>Node</code> interface expose 
+ * methods for dealing with children, not all objects implementing the 
+ * <code>Node</code> interface may have children. For example, 
+ * <code>Text</code> nodes may not have children, and adding children to 
+ * such nodes results in a <code>DOMException</code> being raised.
+ * <p>The attributes <code>nodeName</code>, <code>nodeValue</code> and 
+ * <code>attributes</code> are included as a mechanism to get at node 
+ * information without casting down to the specific derived interface. In 
+ * cases where there is no obvious mapping of these attributes for a 
+ * specific <code>nodeType</code> (e.g., <code>nodeValue</code> for an 
+ * <code>Element</code> or <code>attributes</code> for a <code>Comment</code>
+ * ), this returns <code>null</code>. Note that the specialized interfaces 
+ * may contain additional and more convenient mechanisms to get and set the 
+ * relevant information.
+ * <p>The values of <code>nodeName</code>, 
+ * <code>nodeValue</code>, and <code>attributes</code> vary according to the 
+ * node type as follows: 
+ * <table border='1'>
+ * <tr>
+ * <th>Interface</th>
+ * <th>nodeName</th>
+ * <th>nodeValue</th>
+ * <th>attributes</th>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>Attr</td>
+ * <td valign='top' rowspan='1' colspan='1'>name of 
+ * attribute</td>
+ * <td valign='top' rowspan='1' colspan='1'>value of attribute</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>CDATASection</td>
+ * <td valign='top' rowspan='1' colspan='1'><code>"#cdata-section"</code></td>
+ * <td valign='top' rowspan='1' colspan='1'>
+ * content of the CDATA Section</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>Comment</td>
+ * <td valign='top' rowspan='1' colspan='1'><code>"#comment"</code></td>
+ * <td valign='top' rowspan='1' colspan='1'>content of 
+ * the comment</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>Document</td>
+ * <td valign='top' rowspan='1' colspan='1'><code>"#document"</code></td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>DocumentFragment</td>
+ * <td valign='top' rowspan='1' colspan='1'>
+ * <code>"#document-fragment"</code></td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>DocumentType</td>
+ * <td valign='top' rowspan='1' colspan='1'>document type name</td>
+ * <td valign='top' rowspan='1' colspan='1'>
+ * null</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>Element</td>
+ * <td valign='top' rowspan='1' colspan='1'>tag name</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * <td valign='top' rowspan='1' colspan='1'>NamedNodeMap</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>Entity</td>
+ * <td valign='top' rowspan='1' colspan='1'>entity name</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>
+ * EntityReference</td>
+ * <td valign='top' rowspan='1' colspan='1'>name of entity referenced</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>Notation</td>
+ * <td valign='top' rowspan='1' colspan='1'>notation name</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * <td valign='top' rowspan='1' colspan='1'>
+ * null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>ProcessingInstruction</td>
+ * <td valign='top' rowspan='1' colspan='1'>target</td>
+ * <td valign='top' rowspan='1' colspan='1'>entire content excluding the target</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * <tr>
+ * <td valign='top' rowspan='1' colspan='1'>Text</td>
+ * <td valign='top' rowspan='1' colspan='1'>
+ * <code>"#text"</code></td>
+ * <td valign='top' rowspan='1' colspan='1'>content of the text node</td>
+ * <td valign='top' rowspan='1' colspan='1'>null</td>
+ * </tr>
+ * </table> 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface Node {
+    // NodeType
+    /**
+     * The node is an <code>Element</code>.
+     */
+    public static final short ELEMENT_NODE              = 1;
+    /**
+     * The node is an <code>Attr</code>.
+     */
+    public static final short ATTRIBUTE_NODE            = 2;
+    /**
+     * The node is a <code>Text</code> node.
+     */
+    public static final short TEXT_NODE                 = 3;
+    /**
+     * The node is a <code>CDATASection</code>.
+     */
+    public static final short CDATA_SECTION_NODE        = 4;
+    /**
+     * The node is an <code>EntityReference</code>.
+     */
+    public static final short ENTITY_REFERENCE_NODE     = 5;
+    /**
+     * The node is an <code>Entity</code>.
+     */
+    public static final short ENTITY_NODE               = 6;
+    /**
+     * The node is a <code>ProcessingInstruction</code>.
+     */
+    public static final short PROCESSING_INSTRUCTION_NODE = 7;
+    /**
+     * The node is a <code>Comment</code>.
+     */
+    public static final short COMMENT_NODE              = 8;
+    /**
+     * The node is a <code>Document</code>.
+     */
+    public static final short DOCUMENT_NODE             = 9;
+    /**
+     * The node is a <code>DocumentType</code>.
+     */
+    public static final short DOCUMENT_TYPE_NODE        = 10;
+    /**
+     * The node is a <code>DocumentFragment</code>.
+     */
+    public static final short DOCUMENT_FRAGMENT_NODE    = 11;
+    /**
+     * The node is a <code>Notation</code>.
+     */
+    public static final short NOTATION_NODE             = 12;
+
+    /**
+     * The name of this node, depending on its type; see the table above.
+     */
+    public String getNodeName();
+
+    /**
+     * The value of this node, depending on its type; see the table above. 
+     * When it is defined to be <code>null</code>, setting it has no effect.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.
+     * @exception DOMException
+     *   DOMSTRING_SIZE_ERR: Raised when it would return more characters than 
+     *   fit in a <code>DOMString</code> variable on the implementation 
+     *   platform.
+     */
+    public String getNodeValue()
+                                 throws DOMException;
+    /**
+     * The value of this node, depending on its type; see the table above. 
+     * When it is defined to be <code>null</code>, setting it has no effect.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.
+     * @exception DOMException
+     *   DOMSTRING_SIZE_ERR: Raised when it would return more characters than 
+     *   fit in a <code>DOMString</code> variable on the implementation 
+     *   platform.
+     */
+    public void setNodeValue(String nodeValue)
+                                 throws DOMException;
+
+    /**
+     * A code representing the type of the underlying object, as defined above.
+     */
+    public short getNodeType();
+
+    /**
+     * The parent of this node. All nodes, except <code>Attr</code>, 
+     * <code>Document</code>, <code>DocumentFragment</code>, 
+     * <code>Entity</code>, and <code>Notation</code> may have a parent. 
+     * However, if a node has just been created and not yet added to the 
+     * tree, or if it has been removed from the tree, this is 
+     * <code>null</code>.
+     */
+    public Node getParentNode();
+
+    /**
+     * A <code>NodeList</code> that contains all children of this node. If 
+     * there are no children, this is a <code>NodeList</code> containing no 
+     * nodes.
+     */
+    public NodeList getChildNodes();
+
+    /**
+     * The first child of this node. If there is no such node, this returns 
+     * <code>null</code>.
+     */
+    public Node getFirstChild();
+
+    /**
+     * The last child of this node. If there is no such node, this returns 
+     * <code>null</code>.
+     */
+    public Node getLastChild();
+
+    /**
+     * The node immediately preceding this node. If there is no such node, 
+     * this returns <code>null</code>.
+     */
+    public Node getPreviousSibling();
+
+    /**
+     * The node immediately following this node. If there is no such node, 
+     * this returns <code>null</code>.
+     */
+    public Node getNextSibling();
+
+    /**
+     * A <code>NamedNodeMap</code> containing the attributes of this node (if 
+     * it is an <code>Element</code>) or <code>null</code> otherwise.
+     */
+    public NamedNodeMap getAttributes();
+
+    /**
+     * The <code>Document</code> object associated with this node. This is 
+     * also the <code>Document</code> object used to create new nodes. When 
+     * this node is a <code>Document</code> or a <code>DocumentType</code> 
+     * which is not used with any <code>Document</code> yet, this is 
+     * <code>null</code>.
+     * @version DOM Level 2
+     */
+    public Document getOwnerDocument();
+
+    /**
+     * Inserts the node <code>newChild</code> before the existing child node 
+     * <code>refChild</code>. If <code>refChild</code> is <code>null</code>, 
+     * insert <code>newChild</code> at the end of the list of children.
+     * <br>If <code>newChild</code> is a <code>DocumentFragment</code> object, 
+     * all of its children are inserted, in the same order, before 
+     * <code>refChild</code>. If the <code>newChild</code> is already in the 
+     * tree, it is first removed.
+     * @param newChild The node to insert.
+     * @param refChild The reference node, i.e., the node before which the 
+     *   new node must be inserted.
+     * @return The node being inserted.
+     * @exception DOMException
+     *   HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not 
+     *   allow children of the type of the <code>newChild</code> node, or if 
+     *   the node to insert is one of this node's ancestors or this node 
+     *   itself.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>newChild</code> was created 
+     *   from a different document than the one that created this node.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or 
+     *   if the parent of the node being inserted is readonly.
+     *   <br>NOT_FOUND_ERR: Raised if <code>refChild</code> is not a child of 
+     *   this node.
+     */
+    public Node insertBefore(Node newChild, 
+                             Node refChild)
+                             throws DOMException;
+
+    /**
+     * Replaces the child node <code>oldChild</code> with <code>newChild</code>
+     *  in the list of children, and returns the <code>oldChild</code> node.
+     * <br>If <code>newChild</code> is a <code>DocumentFragment</code> object, 
+     * <code>oldChild</code> is replaced by all of the 
+     * <code>DocumentFragment</code> children, which are inserted in the 
+     * same order. If the <code>newChild</code> is already in the tree, it 
+     * is first removed.
+     * @param newChild The new node to put in the child list.
+     * @param oldChild The node being replaced in the list.
+     * @return The node replaced.
+     * @exception DOMException
+     *   HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not 
+     *   allow children of the type of the <code>newChild</code> node, or if 
+     *   the node to put in is one of this node's ancestors or this node 
+     *   itself.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>newChild</code> was created 
+     *   from a different document than the one that created this node.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node or the parent of 
+     *   the new node is readonly.
+     *   <br>NOT_FOUND_ERR: Raised if <code>oldChild</code> is not a child of 
+     *   this node.
+     */
+    public Node replaceChild(Node newChild, 
+                             Node oldChild)
+                             throws DOMException;
+
+    /**
+     * Removes the child node indicated by <code>oldChild</code> from the list 
+     * of children, and returns it.
+     * @param oldChild The node being removed.
+     * @return The node removed.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     *   <br>NOT_FOUND_ERR: Raised if <code>oldChild</code> is not a child of 
+     *   this node.
+     */
+    public Node removeChild(Node oldChild)
+                            throws DOMException;
+
+    /**
+     * Adds the node <code>newChild</code> to the end of the list of children 
+     * of this node. If the <code>newChild</code> is already in the tree, it 
+     * is first removed.
+     * @param newChild The node to add.If it is a 
+     *   <code>DocumentFragment</code> object, the entire contents of the 
+     *   document fragment are moved into the child list of this node
+     * @return The node added.
+     * @exception DOMException
+     *   HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not 
+     *   allow children of the type of the <code>newChild</code> node, or if 
+     *   the node to append is one of this node's ancestors or this node 
+     *   itself.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>newChild</code> was created 
+     *   from a different document than the one that created this node.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or 
+     *   if the previous parent of the node being inserted is readonly.
+     */
+    public Node appendChild(Node newChild)
+                            throws DOMException;
+
+    /**
+     * Returns whether this node has any children.
+     * @return <code>true</code> if this node has any children, 
+     *   <code>false</code> otherwise.
+     */
+    public boolean hasChildNodes();
+
+    /**
+     * Returns a duplicate of this node, i.e., serves as a generic copy 
+     * constructor for nodes. The duplicate node has no parent; (
+     * <code>parentNode</code> is <code>null</code>.).
+     * <br>Cloning an <code>Element</code> copies all attributes and their 
+     * values, including those generated by the XML processor to represent 
+     * defaulted attributes, but this method does not copy any text it 
+     * contains unless it is a deep clone, since the text is contained in a 
+     * child <code>Text</code> node. Cloning an <code>Attribute</code> 
+     * directly, as opposed to be cloned as part of an <code>Element</code> 
+     * cloning operation, returns a specified attribute (
+     * <code>specified</code> is <code>true</code>). Cloning any other type 
+     * of node simply returns a copy of this node.
+     * <br>Note that cloning an immutable subtree results in a mutable copy, 
+     * but the children of an <code>EntityReference</code> clone are readonly
+     * . In addition, clones of unspecified <code>Attr</code> nodes are 
+     * specified. And, cloning <code>Document</code>, 
+     * <code>DocumentType</code>, <code>Entity</code>, and 
+     * <code>Notation</code> nodes is implementation dependent.
+     * @param deep If <code>true</code>, recursively clone the subtree under 
+     *   the specified node; if <code>false</code>, clone only the node 
+     *   itself (and its attributes, if it is an <code>Element</code>).
+     * @return The duplicate node.
+     */
+    public Node cloneNode(boolean deep);
+
+    /**
+     * Puts all <code>Text</code> nodes in the full depth of the sub-tree 
+     * underneath this <code>Node</code>, including attribute nodes, into a 
+     * "normal" form where only structure (e.g., elements, comments, 
+     * processing instructions, CDATA sections, and entity references) 
+     * separates <code>Text</code> nodes, i.e., there are neither adjacent 
+     * <code>Text</code> nodes nor empty <code>Text</code> nodes. This can 
+     * be used to ensure that the DOM view of a document is the same as if 
+     * it were saved and re-loaded, and is useful when operations (such as 
+     * XPointer  lookups) that depend on a particular document tree 
+     * structure are to be used.In cases where the document contains 
+     * <code>CDATASections</code>, the normalize operation alone may not be 
+     * sufficient, since XPointers do not differentiate between 
+     * <code>Text</code> nodes and <code>CDATASection</code> nodes.
+     * @version DOM Level 2
+     */
+    public void normalize();
+
+    /**
+     * Tests whether the DOM implementation implements a specific feature and 
+     * that feature is supported by this node.
+     * @param feature The name of the feature to test. This is the same name 
+     *   which can be passed to the method <code>hasFeature</code> on 
+     *   <code>DOMImplementation</code>.
+     * @param version This is the version number of the feature to test. In 
+     *   Level 2, version 1, this is the string "2.0". If the version is not 
+     *   specified, supporting any version of the feature will cause the 
+     *   method to return <code>true</code>.
+     * @return Returns <code>true</code> if the specified feature is 
+     *   supported on this node, <code>false</code> otherwise.
+     * @since DOM Level 2
+     */
+    public boolean isSupported(String feature, 
+                               String version);
+
+    /**
+     * The namespace URI of this node, or <code>null</code> if it is 
+     * unspecified.
+     * <br>This is not a computed value that is the result of a namespace 
+     * lookup based on an examination of the namespace declarations in 
+     * scope. It is merely the namespace URI given at creation time.
+     * <br>For nodes of any type other than <code>ELEMENT_NODE</code> and 
+     * <code>ATTRIBUTE_NODE</code> and nodes created with a DOM Level 1 
+     * method, such as <code>createElement</code> from the 
+     * <code>Document</code> interface, this is always <code>null</code>.Per 
+     * the Namespaces in XML Specification  an attribute does not inherit 
+     * its namespace from the element it is attached to. If an attribute is 
+     * not explicitly given a namespace, it simply has no namespace.
+     * @since DOM Level 2
+     */
+    public String getNamespaceURI();
+
+    /**
+     * The namespace prefix of this node, or <code>null</code> if it is 
+     * unspecified.
+     * <br>Note that setting this attribute, when permitted, changes the 
+     * <code>nodeName</code> attribute, which holds the qualified name, as 
+     * well as the <code>tagName</code> and <code>name</code> attributes of 
+     * the <code>Element</code> and <code>Attr</code> interfaces, when 
+     * applicable.
+     * <br>Note also that changing the prefix of an attribute that is known to 
+     * have a default value, does not make a new attribute with the default 
+     * value and the original prefix appear, since the 
+     * <code>namespaceURI</code> and <code>localName</code> do not change.
+     * <br>For nodes of any type other than <code>ELEMENT_NODE</code> and 
+     * <code>ATTRIBUTE_NODE</code> and nodes created with a DOM Level 1 
+     * method, such as <code>createElement</code> from the 
+     * <code>Document</code> interface, this is always <code>null</code>.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified prefix contains an 
+     *   illegal character, per the XML 1.0 specification .
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     *   <br>NAMESPACE_ERR: Raised if the specified <code>prefix</code> is 
+     *   malformed per the Namespaces in XML specification, if the 
+     *   <code>namespaceURI</code> of this node is <code>null</code>, if the 
+     *   specified prefix is "xml" and the <code>namespaceURI</code> of this 
+     *   node is different from "http://www.w3.org/XML/1998/namespace", if 
+     *   this node is an attribute and the specified prefix is "xmlns" and 
+     *   the <code>namespaceURI</code> of this node is different from "
+     *   http://www.w3.org/2000/xmlns/", or if this node is an attribute and 
+     *   the <code>qualifiedName</code> of this node is "xmlns" .
+     * @since DOM Level 2
+     */
+    public String getPrefix();
+    /**
+     * The namespace prefix of this node, or <code>null</code> if it is 
+     * unspecified.
+     * <br>Note that setting this attribute, when permitted, changes the 
+     * <code>nodeName</code> attribute, which holds the qualified name, as 
+     * well as the <code>tagName</code> and <code>name</code> attributes of 
+     * the <code>Element</code> and <code>Attr</code> interfaces, when 
+     * applicable.
+     * <br>Note also that changing the prefix of an attribute that is known to 
+     * have a default value, does not make a new attribute with the default 
+     * value and the original prefix appear, since the 
+     * <code>namespaceURI</code> and <code>localName</code> do not change.
+     * <br>For nodes of any type other than <code>ELEMENT_NODE</code> and 
+     * <code>ATTRIBUTE_NODE</code> and nodes created with a DOM Level 1 
+     * method, such as <code>createElement</code> from the 
+     * <code>Document</code> interface, this is always <code>null</code>.
+     * @exception DOMException
+     *   INVALID_CHARACTER_ERR: Raised if the specified prefix contains an 
+     *   illegal character, per the XML 1.0 specification .
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     *   <br>NAMESPACE_ERR: Raised if the specified <code>prefix</code> is 
+     *   malformed per the Namespaces in XML specification, if the 
+     *   <code>namespaceURI</code> of this node is <code>null</code>, if the 
+     *   specified prefix is "xml" and the <code>namespaceURI</code> of this 
+     *   node is different from "http://www.w3.org/XML/1998/namespace", if 
+     *   this node is an attribute and the specified prefix is "xmlns" and 
+     *   the <code>namespaceURI</code> of this node is different from "
+     *   http://www.w3.org/2000/xmlns/", or if this node is an attribute and 
+     *   the <code>qualifiedName</code> of this node is "xmlns" .
+     * @since DOM Level 2
+     */
+    public void setPrefix(String prefix)
+                               throws DOMException;
+
+    /**
+     * Returns the local part of the qualified name of this node.
+     * <br>For nodes of any type other than <code>ELEMENT_NODE</code> and 
+     * <code>ATTRIBUTE_NODE</code> and nodes created with a DOM Level 1 
+     * method, such as <code>createElement</code> from the 
+     * <code>Document</code> interface, this is always <code>null</code>.
+     * @since DOM Level 2
+     */
+    public String getLocalName();
+
+    /**
+     * Returns whether this node (if it is an element) has any attributes.
+     * @return <code>true</code> if this node has any attributes, 
+     *   <code>false</code> otherwise.
+     * @since DOM Level 2
+     */
+    public boolean hasAttributes();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/NodeList.java b/debian/dom2-bindings/org/w3c/dom/NodeList.java
new file mode 100644
index 0000000..a90b4fd
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/NodeList.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>NodeList</code> interface provides the abstraction of an ordered 
+ * collection of nodes, without defining or constraining how this collection 
+ * is implemented. <code>NodeList</code> objects in the DOM are live.
+ * <p>The items in the <code>NodeList</code> are accessible via an integral 
+ * index, starting from 0.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface NodeList {
+    /**
+     * Returns the <code>index</code>th item in the collection. If 
+     * <code>index</code> is greater than or equal to the number of nodes in 
+     * the list, this returns <code>null</code>.
+     * @param index Index into the collection.
+     * @return The node at the <code>index</code>th position in the 
+     *   <code>NodeList</code>, or <code>null</code> if that is not a valid 
+     *   index.
+     */
+    public Node item(int index);
+
+    /**
+     * The number of nodes in the list. The range of valid child node indices 
+     * is 0 to <code>length-1</code> inclusive.
+     */
+    public int getLength();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/Notation.java b/debian/dom2-bindings/org/w3c/dom/Notation.java
new file mode 100644
index 0000000..186836d
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/Notation.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * This interface represents a notation declared in the DTD. A notation either 
+ * declares, by name, the format of an unparsed entity (see section 4.7 of 
+ * the XML 1.0 specification ), or is used for formal declaration of 
+ * processing instruction targets (see section 2.6 of the XML 1.0 
+ * specification ). The <code>nodeName</code> attribute inherited from 
+ * <code>Node</code> is set to the declared name of the notation.
+ * <p>The DOM Level 1 does not support editing <code>Notation</code> nodes; 
+ * they are therefore readonly.
+ * <p>A <code>Notation</code> node does not have any parent.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface Notation extends Node {
+    /**
+     * The public identifier of this notation. If the public identifier was 
+     * not specified, this is <code>null</code>.
+     */
+    public String getPublicId();
+
+    /**
+     * The system identifier of this notation. If the system identifier was 
+     * not specified, this is <code>null</code>.
+     */
+    public String getSystemId();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/ProcessingInstruction.java b/debian/dom2-bindings/org/w3c/dom/ProcessingInstruction.java
new file mode 100644
index 0000000..fe447b5
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/ProcessingInstruction.java
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>ProcessingInstruction</code> interface represents a "processing 
+ * instruction", used in XML as a way to keep processor-specific information 
+ * in the text of the document.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface ProcessingInstruction extends Node {
+    /**
+     * The target of this processing instruction. XML defines this as being 
+     * the first token following the markup that begins the processing 
+     * instruction.
+     */
+    public String getTarget();
+
+    /**
+     * The content of this processing instruction. This is from the first non 
+     * white space character after the target to the character immediately 
+     * preceding the <code>?></code>.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.
+     */
+    public String getData();
+    /**
+     * The content of this processing instruction. This is from the first non 
+     * white space character after the target to the character immediately 
+     * preceding the <code>?></code>.
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.
+     */
+    public void setData(String data)
+                          throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/Text.java b/debian/dom2-bindings/org/w3c/dom/Text.java
new file mode 100644
index 0000000..842a973
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/Text.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom;
+
+/**
+ * The <code>Text</code> interface inherits from <code>CharacterData</code> 
+ * and represents the textual content (termed character data in XML) of an 
+ * <code>Element</code> or <code>Attr</code>. If there is no markup inside 
+ * an element's content, the text is contained in a single object 
+ * implementing the <code>Text</code> interface that is the only child of 
+ * the element. If there is markup, it is parsed into the information items 
+ * (elements, comments, etc.) and <code>Text</code> nodes that form the list 
+ * of children of the element.
+ * <p>When a document is first made available via the DOM, there is only one 
+ * <code>Text</code> node for each block of text. Users may create adjacent 
+ * <code>Text</code> nodes that represent the contents of a given element 
+ * without any intervening markup, but should be aware that there is no way 
+ * to represent the separations between these nodes in XML or HTML, so they 
+ * will not (in general) persist between DOM editing sessions. The 
+ * <code>normalize()</code> method on <code>Node</code> merges any such 
+ * adjacent <code>Text</code> objects into a single node for each block of 
+ * text.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113'>Document Object Model (DOM) Level 2 Core Specification</a>.
+ */
+public interface Text extends CharacterData {
+    /**
+     * Breaks this node into two nodes at the specified <code>offset</code>, 
+     * keeping both in the tree as siblings. After being split, this node 
+     * will contain all the content up to the <code>offset</code> point. A 
+     * new node of the same type, which contains all the content at and 
+     * after the <code>offset</code> point, is returned. If the original 
+     * node had a parent node, the new node is inserted as the next sibling 
+     * of the original node. When the <code>offset</code> is equal to the 
+     * length of this node, the new node has no data.
+     * @param offset The 16-bit unit offset at which to split, starting from 
+     *   <code>0</code>.
+     * @return The new node, of the same type as this node.
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if the specified offset is negative or greater 
+     *   than the number of 16-bit units in <code>data</code>.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.
+     */
+    public Text splitText(int offset)
+                          throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSS2Properties.java b/debian/dom2-bindings/org/w3c/dom/css/CSS2Properties.java
new file mode 100644
index 0000000..18f589f
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSS2Properties.java
@@ -0,0 +1,2265 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>CSS2Properties</code> interface represents a convenience 
+ * mechanism for retrieving and setting properties within a 
+ * <code>CSSStyleDeclaration</code>. The attributes of this interface 
+ * correspond to all the properties specified in CSS2. Getting an attribute 
+ * of this interface is equivalent to calling the 
+ * <code>getPropertyValue</code> method of the 
+ * <code>CSSStyleDeclaration</code> interface. Setting an attribute of this 
+ * interface is equivalent to calling the <code>setProperty</code> method of 
+ * the <code>CSSStyleDeclaration</code> interface. 
+ * <p> A conformant implementation of the CSS module is not required to 
+ * implement the <code>CSS2Properties</code> interface. If an implementation 
+ * does implement this interface, the expectation is that language-specific 
+ * methods can be used to cast from an instance of the 
+ * <code>CSSStyleDeclaration</code> interface to the 
+ * <code>CSS2Properties</code> interface. 
+ * <p> If an implementation does implement this interface, it is expected to 
+ * understand the specific syntax of the shorthand properties, and apply 
+ * their semantics; when the <code>margin</code> property is set, for 
+ * example, the <code>marginTop</code>, <code>marginRight</code>, 
+ * <code>marginBottom</code> and <code>marginLeft</code> properties are 
+ * actually being set by the underlying implementation. 
+ * <p> When dealing with CSS "shorthand" properties, the shorthand properties 
+ * should be decomposed into their component longhand properties as 
+ * appropriate, and when querying for their value, the form returned should 
+ * be the shortest form exactly equivalent to the declarations made in the 
+ * ruleset. However, if there is no shorthand declaration that could be 
+ * added to the ruleset without changing in any way the rules already 
+ * declared in the ruleset (i.e., by adding longhand rules that were 
+ * previously not declared in the ruleset), then the empty string should be 
+ * returned for the shorthand property. 
+ * <p> For example, querying for the <code>font</code> property should not 
+ * return "normal normal normal 14pt/normal Arial, sans-serif", when "14pt 
+ * Arial, sans-serif" suffices. (The normals are initial values, and are 
+ * implied by use of the longhand property.) 
+ * <p> If the values for all the longhand properties that compose a particular 
+ * string are the initial values, then a string consisting of all the 
+ * initial values should be returned (e.g. a <code>border-width</code> value 
+ * of "medium" should be returned as such, not as ""). 
+ * <p> For some shorthand properties that take missing values from other 
+ * sides, such as the <code>margin</code>, <code>padding</code>, and 
+ * <code>border-[width|style|color]</code> properties, the minimum number of 
+ * sides possible should be used; i.e., "0px 10px" will be returned instead 
+ * of "0px 10px 0px 10px". 
+ * <p> If the value of a shorthand property can not be decomposed into its 
+ * component longhand properties, as is the case for the <code>font</code> 
+ * property with a value of "menu", querying for the values of the component 
+ * longhand properties should return the empty string. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSS2Properties {
+    /**
+     *  See the azimuth property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getAzimuth();
+    /**
+     *  See the azimuth property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setAzimuth(String azimuth)
+                                             throws DOMException;
+
+    /**
+     *  See the background property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBackground();
+    /**
+     *  See the background property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBackground(String background)
+                                             throws DOMException;
+
+    /**
+     *  See the background-attachment property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBackgroundAttachment();
+    /**
+     *  See the background-attachment property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBackgroundAttachment(String backgroundAttachment)
+                                             throws DOMException;
+
+    /**
+     *  See the background-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBackgroundColor();
+    /**
+     *  See the background-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBackgroundColor(String backgroundColor)
+                                             throws DOMException;
+
+    /**
+     *  See the background-image property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBackgroundImage();
+    /**
+     *  See the background-image property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBackgroundImage(String backgroundImage)
+                                             throws DOMException;
+
+    /**
+     *  See the background-position property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBackgroundPosition();
+    /**
+     *  See the background-position property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBackgroundPosition(String backgroundPosition)
+                                             throws DOMException;
+
+    /**
+     *  See the background-repeat property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBackgroundRepeat();
+    /**
+     *  See the background-repeat property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBackgroundRepeat(String backgroundRepeat)
+                                             throws DOMException;
+
+    /**
+     *  See the border property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorder();
+    /**
+     *  See the border property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorder(String border)
+                                             throws DOMException;
+
+    /**
+     *  See the border-collapse property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderCollapse();
+    /**
+     *  See the border-collapse property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderCollapse(String borderCollapse)
+                                             throws DOMException;
+
+    /**
+     *  See the border-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderColor();
+    /**
+     *  See the border-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderColor(String borderColor)
+                                             throws DOMException;
+
+    /**
+     *  See the border-spacing property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderSpacing();
+    /**
+     *  See the border-spacing property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderSpacing(String borderSpacing)
+                                             throws DOMException;
+
+    /**
+     *  See the border-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderStyle();
+    /**
+     *  See the border-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderStyle(String borderStyle)
+                                             throws DOMException;
+
+    /**
+     *  See the border-top property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderTop();
+    /**
+     *  See the border-top property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderTop(String borderTop)
+                                             throws DOMException;
+
+    /**
+     *  See the border-right property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderRight();
+    /**
+     *  See the border-right property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderRight(String borderRight)
+                                             throws DOMException;
+
+    /**
+     *  See the border-bottom property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderBottom();
+    /**
+     *  See the border-bottom property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderBottom(String borderBottom)
+                                             throws DOMException;
+
+    /**
+     *  See the border-left property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderLeft();
+    /**
+     *  See the border-left property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderLeft(String borderLeft)
+                                             throws DOMException;
+
+    /**
+     *  See the border-top-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderTopColor();
+    /**
+     *  See the border-top-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderTopColor(String borderTopColor)
+                                             throws DOMException;
+
+    /**
+     *  See the border-right-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderRightColor();
+    /**
+     *  See the border-right-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderRightColor(String borderRightColor)
+                                             throws DOMException;
+
+    /**
+     *  See the border-bottom-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderBottomColor();
+    /**
+     *  See the border-bottom-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderBottomColor(String borderBottomColor)
+                                             throws DOMException;
+
+    /**
+     *  See the border-left-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderLeftColor();
+    /**
+     *  See the border-left-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderLeftColor(String borderLeftColor)
+                                             throws DOMException;
+
+    /**
+     *  See the border-top-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderTopStyle();
+    /**
+     *  See the border-top-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderTopStyle(String borderTopStyle)
+                                             throws DOMException;
+
+    /**
+     *  See the border-right-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderRightStyle();
+    /**
+     *  See the border-right-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderRightStyle(String borderRightStyle)
+                                             throws DOMException;
+
+    /**
+     *  See the border-bottom-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderBottomStyle();
+    /**
+     *  See the border-bottom-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderBottomStyle(String borderBottomStyle)
+                                             throws DOMException;
+
+    /**
+     *  See the border-left-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderLeftStyle();
+    /**
+     *  See the border-left-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderLeftStyle(String borderLeftStyle)
+                                             throws DOMException;
+
+    /**
+     *  See the border-top-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderTopWidth();
+    /**
+     *  See the border-top-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderTopWidth(String borderTopWidth)
+                                             throws DOMException;
+
+    /**
+     *  See the border-right-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderRightWidth();
+    /**
+     *  See the border-right-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderRightWidth(String borderRightWidth)
+                                             throws DOMException;
+
+    /**
+     *  See the border-bottom-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderBottomWidth();
+    /**
+     *  See the border-bottom-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderBottomWidth(String borderBottomWidth)
+                                             throws DOMException;
+
+    /**
+     *  See the border-left-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderLeftWidth();
+    /**
+     *  See the border-left-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderLeftWidth(String borderLeftWidth)
+                                             throws DOMException;
+
+    /**
+     *  See the border-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBorderWidth();
+    /**
+     *  See the border-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBorderWidth(String borderWidth)
+                                             throws DOMException;
+
+    /**
+     *  See the bottom property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getBottom();
+    /**
+     *  See the bottom property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setBottom(String bottom)
+                                             throws DOMException;
+
+    /**
+     *  See the caption-side property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getCaptionSide();
+    /**
+     *  See the caption-side property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setCaptionSide(String captionSide)
+                                             throws DOMException;
+
+    /**
+     *  See the clear property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getClear();
+    /**
+     *  See the clear property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setClear(String clear)
+                                             throws DOMException;
+
+    /**
+     *  See the clip property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getClip();
+    /**
+     *  See the clip property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setClip(String clip)
+                                             throws DOMException;
+
+    /**
+     *  See the color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getColor();
+    /**
+     *  See the color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setColor(String color)
+                                             throws DOMException;
+
+    /**
+     *  See the content property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getContent();
+    /**
+     *  See the content property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setContent(String content)
+                                             throws DOMException;
+
+    /**
+     *  See the counter-increment property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getCounterIncrement();
+    /**
+     *  See the counter-increment property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setCounterIncrement(String counterIncrement)
+                                             throws DOMException;
+
+    /**
+     *  See the counter-reset property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getCounterReset();
+    /**
+     *  See the counter-reset property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setCounterReset(String counterReset)
+                                             throws DOMException;
+
+    /**
+     *  See the cue property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getCue();
+    /**
+     *  See the cue property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setCue(String cue)
+                                             throws DOMException;
+
+    /**
+     *  See the cue-after property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getCueAfter();
+    /**
+     *  See the cue-after property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setCueAfter(String cueAfter)
+                                             throws DOMException;
+
+    /**
+     *  See the cue-before property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getCueBefore();
+    /**
+     *  See the cue-before property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setCueBefore(String cueBefore)
+                                             throws DOMException;
+
+    /**
+     *  See the cursor property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getCursor();
+    /**
+     *  See the cursor property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setCursor(String cursor)
+                                             throws DOMException;
+
+    /**
+     *  See the direction property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getDirection();
+    /**
+     *  See the direction property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setDirection(String direction)
+                                             throws DOMException;
+
+    /**
+     *  See the display property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getDisplay();
+    /**
+     *  See the display property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setDisplay(String display)
+                                             throws DOMException;
+
+    /**
+     *  See the elevation property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getElevation();
+    /**
+     *  See the elevation property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setElevation(String elevation)
+                                             throws DOMException;
+
+    /**
+     *  See the empty-cells property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getEmptyCells();
+    /**
+     *  See the empty-cells property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setEmptyCells(String emptyCells)
+                                             throws DOMException;
+
+    /**
+     *  See the float property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getCssFloat();
+    /**
+     *  See the float property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setCssFloat(String cssFloat)
+                                             throws DOMException;
+
+    /**
+     *  See the font property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getFont();
+    /**
+     *  See the font property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFont(String font)
+                                             throws DOMException;
+
+    /**
+     *  See the font-family property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getFontFamily();
+    /**
+     *  See the font-family property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFontFamily(String fontFamily)
+                                             throws DOMException;
+
+    /**
+     *  See the font-size property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getFontSize();
+    /**
+     *  See the font-size property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFontSize(String fontSize)
+                                             throws DOMException;
+
+    /**
+     *  See the font-size-adjust property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getFontSizeAdjust();
+    /**
+     *  See the font-size-adjust property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFontSizeAdjust(String fontSizeAdjust)
+                                             throws DOMException;
+
+    /**
+     *  See the font-stretch property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getFontStretch();
+    /**
+     *  See the font-stretch property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFontStretch(String fontStretch)
+                                             throws DOMException;
+
+    /**
+     *  See the font-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getFontStyle();
+    /**
+     *  See the font-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFontStyle(String fontStyle)
+                                             throws DOMException;
+
+    /**
+     *  See the font-variant property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getFontVariant();
+    /**
+     *  See the font-variant property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFontVariant(String fontVariant)
+                                             throws DOMException;
+
+    /**
+     *  See the font-weight property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getFontWeight();
+    /**
+     *  See the font-weight property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFontWeight(String fontWeight)
+                                             throws DOMException;
+
+    /**
+     *  See the height property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getHeight();
+    /**
+     *  See the height property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setHeight(String height)
+                                             throws DOMException;
+
+    /**
+     *  See the left property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getLeft();
+    /**
+     *  See the left property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setLeft(String left)
+                                             throws DOMException;
+
+    /**
+     *  See the letter-spacing property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getLetterSpacing();
+    /**
+     *  See the letter-spacing property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setLetterSpacing(String letterSpacing)
+                                             throws DOMException;
+
+    /**
+     *  See the line-height property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getLineHeight();
+    /**
+     *  See the line-height property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setLineHeight(String lineHeight)
+                                             throws DOMException;
+
+    /**
+     *  See the list-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getListStyle();
+    /**
+     *  See the list-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setListStyle(String listStyle)
+                                             throws DOMException;
+
+    /**
+     *  See the list-style-image property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getListStyleImage();
+    /**
+     *  See the list-style-image property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setListStyleImage(String listStyleImage)
+                                             throws DOMException;
+
+    /**
+     *  See the list-style-position property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getListStylePosition();
+    /**
+     *  See the list-style-position property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setListStylePosition(String listStylePosition)
+                                             throws DOMException;
+
+    /**
+     *  See the list-style-type property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getListStyleType();
+    /**
+     *  See the list-style-type property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setListStyleType(String listStyleType)
+                                             throws DOMException;
+
+    /**
+     *  See the margin property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMargin();
+    /**
+     *  See the margin property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMargin(String margin)
+                                             throws DOMException;
+
+    /**
+     *  See the margin-top property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMarginTop();
+    /**
+     *  See the margin-top property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMarginTop(String marginTop)
+                                             throws DOMException;
+
+    /**
+     *  See the margin-right property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMarginRight();
+    /**
+     *  See the margin-right property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMarginRight(String marginRight)
+                                             throws DOMException;
+
+    /**
+     *  See the margin-bottom property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMarginBottom();
+    /**
+     *  See the margin-bottom property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMarginBottom(String marginBottom)
+                                             throws DOMException;
+
+    /**
+     *  See the margin-left property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMarginLeft();
+    /**
+     *  See the margin-left property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMarginLeft(String marginLeft)
+                                             throws DOMException;
+
+    /**
+     *  See the marker-offset property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMarkerOffset();
+    /**
+     *  See the marker-offset property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMarkerOffset(String markerOffset)
+                                             throws DOMException;
+
+    /**
+     *  See the marks property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMarks();
+    /**
+     *  See the marks property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMarks(String marks)
+                                             throws DOMException;
+
+    /**
+     *  See the max-height property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMaxHeight();
+    /**
+     *  See the max-height property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMaxHeight(String maxHeight)
+                                             throws DOMException;
+
+    /**
+     *  See the max-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMaxWidth();
+    /**
+     *  See the max-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMaxWidth(String maxWidth)
+                                             throws DOMException;
+
+    /**
+     *  See the min-height property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMinHeight();
+    /**
+     *  See the min-height property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMinHeight(String minHeight)
+                                             throws DOMException;
+
+    /**
+     *  See the min-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getMinWidth();
+    /**
+     *  See the min-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setMinWidth(String minWidth)
+                                             throws DOMException;
+
+    /**
+     *  See the orphans property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getOrphans();
+    /**
+     *  See the orphans property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setOrphans(String orphans)
+                                             throws DOMException;
+
+    /**
+     *  See the outline property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getOutline();
+    /**
+     *  See the outline property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setOutline(String outline)
+                                             throws DOMException;
+
+    /**
+     *  See the outline-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getOutlineColor();
+    /**
+     *  See the outline-color property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setOutlineColor(String outlineColor)
+                                             throws DOMException;
+
+    /**
+     *  See the outline-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getOutlineStyle();
+    /**
+     *  See the outline-style property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setOutlineStyle(String outlineStyle)
+                                             throws DOMException;
+
+    /**
+     *  See the outline-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getOutlineWidth();
+    /**
+     *  See the outline-width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setOutlineWidth(String outlineWidth)
+                                             throws DOMException;
+
+    /**
+     *  See the overflow property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getOverflow();
+    /**
+     *  See the overflow property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setOverflow(String overflow)
+                                             throws DOMException;
+
+    /**
+     *  See the padding property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPadding();
+    /**
+     *  See the padding property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPadding(String padding)
+                                             throws DOMException;
+
+    /**
+     *  See the padding-top property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPaddingTop();
+    /**
+     *  See the padding-top property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPaddingTop(String paddingTop)
+                                             throws DOMException;
+
+    /**
+     *  See the padding-right property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPaddingRight();
+    /**
+     *  See the padding-right property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPaddingRight(String paddingRight)
+                                             throws DOMException;
+
+    /**
+     *  See the padding-bottom property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPaddingBottom();
+    /**
+     *  See the padding-bottom property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPaddingBottom(String paddingBottom)
+                                             throws DOMException;
+
+    /**
+     *  See the padding-left property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPaddingLeft();
+    /**
+     *  See the padding-left property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPaddingLeft(String paddingLeft)
+                                             throws DOMException;
+
+    /**
+     *  See the page property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPage();
+    /**
+     *  See the page property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPage(String page)
+                                             throws DOMException;
+
+    /**
+     *  See the page-break-after property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPageBreakAfter();
+    /**
+     *  See the page-break-after property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPageBreakAfter(String pageBreakAfter)
+                                             throws DOMException;
+
+    /**
+     *  See the page-break-before property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPageBreakBefore();
+    /**
+     *  See the page-break-before property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPageBreakBefore(String pageBreakBefore)
+                                             throws DOMException;
+
+    /**
+     *  See the page-break-inside property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPageBreakInside();
+    /**
+     *  See the page-break-inside property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPageBreakInside(String pageBreakInside)
+                                             throws DOMException;
+
+    /**
+     *  See the pause property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPause();
+    /**
+     *  See the pause property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPause(String pause)
+                                             throws DOMException;
+
+    /**
+     *  See the pause-after property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPauseAfter();
+    /**
+     *  See the pause-after property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPauseAfter(String pauseAfter)
+                                             throws DOMException;
+
+    /**
+     *  See the pause-before property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPauseBefore();
+    /**
+     *  See the pause-before property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPauseBefore(String pauseBefore)
+                                             throws DOMException;
+
+    /**
+     *  See the pitch property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPitch();
+    /**
+     *  See the pitch property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPitch(String pitch)
+                                             throws DOMException;
+
+    /**
+     *  See the pitch-range property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPitchRange();
+    /**
+     *  See the pitch-range property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPitchRange(String pitchRange)
+                                             throws DOMException;
+
+    /**
+     *  See the play-during property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPlayDuring();
+    /**
+     *  See the play-during property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPlayDuring(String playDuring)
+                                             throws DOMException;
+
+    /**
+     *  See the position property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getPosition();
+    /**
+     *  See the position property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setPosition(String position)
+                                             throws DOMException;
+
+    /**
+     *  See the quotes property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getQuotes();
+    /**
+     *  See the quotes property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setQuotes(String quotes)
+                                             throws DOMException;
+
+    /**
+     *  See the richness property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getRichness();
+    /**
+     *  See the richness property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setRichness(String richness)
+                                             throws DOMException;
+
+    /**
+     *  See the right property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getRight();
+    /**
+     *  See the right property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setRight(String right)
+                                             throws DOMException;
+
+    /**
+     *  See the size property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getSize();
+    /**
+     *  See the size property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setSize(String size)
+                                             throws DOMException;
+
+    /**
+     *  See the speak property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getSpeak();
+    /**
+     *  See the speak property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setSpeak(String speak)
+                                             throws DOMException;
+
+    /**
+     *  See the speak-header property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getSpeakHeader();
+    /**
+     *  See the speak-header property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setSpeakHeader(String speakHeader)
+                                             throws DOMException;
+
+    /**
+     *  See the speak-numeral property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getSpeakNumeral();
+    /**
+     *  See the speak-numeral property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setSpeakNumeral(String speakNumeral)
+                                             throws DOMException;
+
+    /**
+     *  See the speak-punctuation property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getSpeakPunctuation();
+    /**
+     *  See the speak-punctuation property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setSpeakPunctuation(String speakPunctuation)
+                                             throws DOMException;
+
+    /**
+     *  See the speech-rate property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getSpeechRate();
+    /**
+     *  See the speech-rate property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setSpeechRate(String speechRate)
+                                             throws DOMException;
+
+    /**
+     *  See the stress property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getStress();
+    /**
+     *  See the stress property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setStress(String stress)
+                                             throws DOMException;
+
+    /**
+     *  See the table-layout property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getTableLayout();
+    /**
+     *  See the table-layout property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setTableLayout(String tableLayout)
+                                             throws DOMException;
+
+    /**
+     *  See the text-align property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getTextAlign();
+    /**
+     *  See the text-align property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setTextAlign(String textAlign)
+                                             throws DOMException;
+
+    /**
+     *  See the text-decoration property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getTextDecoration();
+    /**
+     *  See the text-decoration property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setTextDecoration(String textDecoration)
+                                             throws DOMException;
+
+    /**
+     *  See the text-indent property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getTextIndent();
+    /**
+     *  See the text-indent property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setTextIndent(String textIndent)
+                                             throws DOMException;
+
+    /**
+     *  See the text-shadow property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getTextShadow();
+    /**
+     *  See the text-shadow property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setTextShadow(String textShadow)
+                                             throws DOMException;
+
+    /**
+     *  See the text-transform property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getTextTransform();
+    /**
+     *  See the text-transform property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setTextTransform(String textTransform)
+                                             throws DOMException;
+
+    /**
+     *  See the top property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getTop();
+    /**
+     *  See the top property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setTop(String top)
+                                             throws DOMException;
+
+    /**
+     *  See the unicode-bidi property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getUnicodeBidi();
+    /**
+     *  See the unicode-bidi property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setUnicodeBidi(String unicodeBidi)
+                                             throws DOMException;
+
+    /**
+     *  See the vertical-align property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getVerticalAlign();
+    /**
+     *  See the vertical-align property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setVerticalAlign(String verticalAlign)
+                                             throws DOMException;
+
+    /**
+     *  See the visibility property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getVisibility();
+    /**
+     *  See the visibility property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setVisibility(String visibility)
+                                             throws DOMException;
+
+    /**
+     *  See the voice-family property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getVoiceFamily();
+    /**
+     *  See the voice-family property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setVoiceFamily(String voiceFamily)
+                                             throws DOMException;
+
+    /**
+     *  See the volume property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getVolume();
+    /**
+     *  See the volume property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setVolume(String volume)
+                                             throws DOMException;
+
+    /**
+     *  See the white-space property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getWhiteSpace();
+    /**
+     *  See the white-space property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setWhiteSpace(String whiteSpace)
+                                             throws DOMException;
+
+    /**
+     *  See the widows property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getWidows();
+    /**
+     *  See the widows property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setWidows(String widows)
+                                             throws DOMException;
+
+    /**
+     *  See the width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getWidth();
+    /**
+     *  See the width property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setWidth(String width)
+                                             throws DOMException;
+
+    /**
+     *  See the word-spacing property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getWordSpacing();
+    /**
+     *  See the word-spacing property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setWordSpacing(String wordSpacing)
+                                             throws DOMException;
+
+    /**
+     *  See the z-index property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public String getZIndex();
+    /**
+     *  See the z-index property definition in CSS2. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the new value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setZIndex(String zIndex)
+                                             throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSCharsetRule.java b/debian/dom2-bindings/org/w3c/dom/css/CSSCharsetRule.java
new file mode 100644
index 0000000..fc85a05
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSCharsetRule.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>CSSCharsetRule</code> interface represents a @charset rule in a 
+ * CSS style sheet. The value of the <code>encoding</code> attribute does 
+ * not affect the encoding of text data in the DOM objects; this encoding is 
+ * always UTF-16. After a stylesheet is loaded, the value of the 
+ * <code>encoding</code> attribute is the value found in the 
+ * <code>@charset</code> rule. If there was no <code>@charset</code> in the 
+ * original document, then no <code>CSSCharsetRule</code> is created. The 
+ * value of the <code>encoding</code> attribute may also be used as a hint 
+ * for the encoding used on serialization of the style sheet. 
+ * <p> The value of the @charset rule (and therefore of the 
+ * <code>CSSCharsetRule</code>) may not correspond to the encoding the 
+ * document actually came in; character encoding information e.g. in an HTTP 
+ * header, has priority (see CSS document representation) but this is not 
+ * reflected in the <code>CSSCharsetRule</code>. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSCharsetRule extends CSSRule {
+    /**
+     *  The encoding information used in this <code>@charset</code> rule. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified encoding value has a syntax error 
+     *   and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this encoding rule is 
+     *   readonly.
+     */
+    public String getEncoding();
+    /**
+     *  The encoding information used in this <code>@charset</code> rule. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified encoding value has a syntax error 
+     *   and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this encoding rule is 
+     *   readonly.
+     */
+    public void setEncoding(String encoding)
+                           throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSFontFaceRule.java b/debian/dom2-bindings/org/w3c/dom/css/CSSFontFaceRule.java
new file mode 100644
index 0000000..a179570
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSFontFaceRule.java
@@ -0,0 +1,28 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+/**
+ *  The <code>CSSFontFaceRule</code> interface represents a @font-face rule in 
+ * a CSS style sheet. The <code>@font-face</code> rule is used to hold a set 
+ * of font descriptions. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSFontFaceRule extends CSSRule {
+    /**
+     *  The declaration-block of this rule. 
+     */
+    public CSSStyleDeclaration getStyle();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSImportRule.java b/debian/dom2-bindings/org/w3c/dom/css/CSSImportRule.java
new file mode 100644
index 0000000..e18ad56
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSImportRule.java
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.stylesheets.MediaList;
+
+/**
+ *  The <code>CSSImportRule</code> interface represents a @import rule within 
+ * a CSS style sheet. The <code>@import</code> rule is used to import style 
+ * rules from other style sheets. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSImportRule extends CSSRule {
+    /**
+     *  The location of the style sheet to be imported. The attribute will not 
+     * contain the <code>"url(...)"</code> specifier around the URI. 
+     */
+    public String getHref();
+
+    /**
+     *  A list of media types for which this style sheet may be used. 
+     */
+    public MediaList getMedia();
+
+    /**
+     * The style sheet referred to by this rule, if it has been loaded. The 
+     * value of this attribute is <code>null</code> if the style sheet has 
+     * not yet been loaded or if it will not be loaded (e.g. if the style 
+     * sheet is for a media type not supported by the user agent). 
+     */
+    public CSSStyleSheet getStyleSheet();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSMediaRule.java b/debian/dom2-bindings/org/w3c/dom/css/CSSMediaRule.java
new file mode 100644
index 0000000..68a7304
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSMediaRule.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+import org.w3c.dom.stylesheets.MediaList;
+
+/**
+ *  The <code>CSSMediaRule</code> interface represents a @media rule in a CSS 
+ * style sheet. A <code>@media</code> rule can be used to delimit style 
+ * rules for specific media types. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSMediaRule extends CSSRule {
+    /**
+     *  A list of media types for this rule. 
+     */
+    public MediaList getMedia();
+
+    /**
+     *  A list of all CSS rules contained within the media block. 
+     */
+    public CSSRuleList getCssRules();
+
+    /**
+     *  Used to insert a new rule into the media block. 
+     * @param rule  The parsable text representing the rule. For rule sets 
+     *   this contains both the selector and the style declaration. For 
+     *   at-rules, this specifies both the at-identifier and the rule 
+     *   content. 
+     * @param index  The index within the media block's rule collection of 
+     *   the rule before which to insert the specified rule. If the 
+     *   specified index is equal to the length of the media blocks's rule 
+     *   collection, the rule will be added to the end of the media block. 
+     * @return  The index within the media block's rule collection of the 
+     *   newly inserted rule. 
+     * @exception DOMException
+     *   HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at the 
+     *   specified index, e.g., if an <code>@import</code> rule is inserted 
+     *   after a standard rule set or other at-rule.
+     *   <br>INDEX_SIZE_ERR: Raised if the specified index is not a valid 
+     *   insertion point.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this media rule is 
+     *   readonly.
+     *   <br>SYNTAX_ERR: Raised if the specified rule has a syntax error and 
+     *   is unparsable.
+     */
+    public int insertRule(String rule, 
+                          int index)
+                          throws DOMException;
+
+    /**
+     *  Used to delete a rule from the media block. 
+     * @param index  The index within the media block's rule collection of 
+     *   the rule to remove. 
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if the specified index does not correspond to 
+     *   a rule in the media rule list.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this media rule is 
+     *   readonly.
+     */
+    public void deleteRule(int index)
+                           throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSPageRule.java b/debian/dom2-bindings/org/w3c/dom/css/CSSPageRule.java
new file mode 100644
index 0000000..cb95a3e
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSPageRule.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>CSSPageRule</code> interface represents a @page rule within a 
+ * CSS style sheet. The <code>@page</code> rule is used to specify the 
+ * dimensions, orientation, margins, etc. of a page box for paged media. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSPageRule extends CSSRule {
+    /**
+     *  The parsable textual representation of the page selector for the rule. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is readonly.
+     */
+    public String getSelectorText();
+    /**
+     *  The parsable textual representation of the page selector for the rule. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is readonly.
+     */
+    public void setSelectorText(String selectorText)
+                           throws DOMException;
+
+    /**
+     *  The declaration-block of this rule. 
+     */
+    public CSSStyleDeclaration getStyle();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSPrimitiveValue.java b/debian/dom2-bindings/org/w3c/dom/css/CSSPrimitiveValue.java
new file mode 100644
index 0000000..4131d26
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSPrimitiveValue.java
@@ -0,0 +1,296 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>CSSPrimitiveValue</code> interface represents a single CSS value
+ * . This interface may be used to determine the value of a specific style 
+ * property currently set in a block or to set a specific style property 
+ * explicitly within the block. An instance of this interface might be 
+ * obtained from the <code>getPropertyCSSValue</code> method of the 
+ * <code>CSSStyleDeclaration</code> interface. A 
+ * <code>CSSPrimitiveValue</code> object only occurs in a context of a CSS 
+ * property. 
+ * <p> Conversions are allowed between absolute values (from millimeters to 
+ * centimeters, from degrees to radians, and so on) but not between relative 
+ * values. (For example, a pixel value cannot be converted to a centimeter 
+ * value.) Percentage values can't be converted since they are relative to 
+ * the parent value (or another property value). There is one exception for 
+ * color percentage values: since a color percentage value is relative to 
+ * the range 0-255, a color percentage value can be converted to a number; 
+ * (see also the <code>RGBColor</code> interface). 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSPrimitiveValue extends CSSValue {
+    // UnitTypes
+    /**
+     * The value is not a recognized CSS2 value. The value can only be 
+     * obtained by using the <code>cssText</code> attribute.
+     */
+    public static final short CSS_UNKNOWN               = 0;
+    /**
+     * The value is a simple number. The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_NUMBER                = 1;
+    /**
+     * The value is a percentage. The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_PERCENTAGE            = 2;
+    /**
+     * The value is a length (ems). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_EMS                   = 3;
+    /**
+     * The value is a length (exs). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_EXS                   = 4;
+    /**
+     * The value is a length (px). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_PX                    = 5;
+    /**
+     * The value is a length (cm). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_CM                    = 6;
+    /**
+     * The value is a length (mm). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_MM                    = 7;
+    /**
+     * The value is a length (in). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_IN                    = 8;
+    /**
+     * The value is a length (pt). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_PT                    = 9;
+    /**
+     * The value is a length (pc). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_PC                    = 10;
+    /**
+     * The value is an angle (deg). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_DEG                   = 11;
+    /**
+     * The value is an angle (rad). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_RAD                   = 12;
+    /**
+     * The value is an angle (grad). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_GRAD                  = 13;
+    /**
+     * The value is a time (ms). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_MS                    = 14;
+    /**
+     * The value is a time (s). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_S                     = 15;
+    /**
+     * The value is a frequency (Hz). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_HZ                    = 16;
+    /**
+     * The value is a frequency (kHz). The value can be obtained by using the 
+     * <code>getFloatValue</code> method.
+     */
+    public static final short CSS_KHZ                   = 17;
+    /**
+     * The value is a number with an unknown dimension. The value can be 
+     * obtained by using the <code>getFloatValue</code> method.
+     */
+    public static final short CSS_DIMENSION             = 18;
+    /**
+     * The value is a STRING. The value can be obtained by using the 
+     * <code>getStringValue</code> method.
+     */
+    public static final short CSS_STRING                = 19;
+    /**
+     * The value is a URI. The value can be obtained by using the 
+     * <code>getStringValue</code> method.
+     */
+    public static final short CSS_URI                   = 20;
+    /**
+     * The value is an identifier. The value can be obtained by using the 
+     * <code>getStringValue</code> method.
+     */
+    public static final short CSS_IDENT                 = 21;
+    /**
+     * The value is a attribute function. The value can be obtained by using 
+     * the <code>getStringValue</code> method.
+     */
+    public static final short CSS_ATTR                  = 22;
+    /**
+     * The value is a counter or counters function. The value can be obtained 
+     * by using the <code>getCounterValue</code> method.
+     */
+    public static final short CSS_COUNTER               = 23;
+    /**
+     * The value is a rect function. The value can be obtained by using the 
+     * <code>getRectValue</code> method.
+     */
+    public static final short CSS_RECT                  = 24;
+    /**
+     * The value is a RGB color. The value can be obtained by using the 
+     * <code>getRGBColorValue</code> method.
+     */
+    public static final short CSS_RGBCOLOR              = 25;
+
+    /**
+     * The type of the value as defined by the constants specified above.
+     */
+    public short getPrimitiveType();
+
+    /**
+     *  A method to set the float value with a specified unit. If the property 
+     * attached with this value can not accept the specified unit or the 
+     * float value, the value will be unchanged and a 
+     * <code>DOMException</code> will be raised. 
+     * @param unitType  A unit code as defined above. The unit code can only 
+     *   be a float unit type (i.e. <code>CSS_NUMBER</code>, 
+     *   <code>CSS_PERCENTAGE</code>, <code>CSS_EMS</code>, 
+     *   <code>CSS_EXS</code>, <code>CSS_PX</code>, <code>CSS_CM</code>, 
+     *   <code>CSS_MM</code>, <code>CSS_IN</code>, <code>CSS_PT</code>, 
+     *   <code>CSS_PC</code>, <code>CSS_DEG</code>, <code>CSS_RAD</code>, 
+     *   <code>CSS_GRAD</code>, <code>CSS_MS</code>, <code>CSS_S</code>, 
+     *   <code>CSS_HZ</code>, <code>CSS_KHZ</code>, 
+     *   <code>CSS_DIMENSION</code>). 
+     * @param floatValue  The new float value. 
+     * @exception DOMException
+     *    INVALID_ACCESS_ERR: Raised if the attached property doesn't support 
+     *   the float value or the unit type.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setFloatValue(short unitType, 
+                              float floatValue)
+                              throws DOMException;
+
+    /**
+     *  This method is used to get a float value in a specified unit. If this 
+     * CSS value doesn't contain a float value or can't be converted into 
+     * the specified unit, a <code>DOMException</code> is raised. 
+     * @param unitType  A unit code to get the float value. The unit code can 
+     *   only be a float unit type (i.e. <code>CSS_NUMBER</code>, 
+     *   <code>CSS_PERCENTAGE</code>, <code>CSS_EMS</code>, 
+     *   <code>CSS_EXS</code>, <code>CSS_PX</code>, <code>CSS_CM</code>, 
+     *   <code>CSS_MM</code>, <code>CSS_IN</code>, <code>CSS_PT</code>, 
+     *   <code>CSS_PC</code>, <code>CSS_DEG</code>, <code>CSS_RAD</code>, 
+     *   <code>CSS_GRAD</code>, <code>CSS_MS</code>, <code>CSS_S</code>, 
+     *   <code>CSS_HZ</code>, <code>CSS_KHZ</code>, 
+     *   <code>CSS_DIMENSION</code>). 
+     * @return  The float value in the specified unit. 
+     * @exception DOMException
+     *    INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a float 
+     *   value or if the float value can't be converted into the specified 
+     *   unit. 
+     */
+    public float getFloatValue(short unitType)
+                               throws DOMException;
+
+    /**
+     *  A method to set the string value with the specified unit. If the 
+     * property attached to this value can't accept the specified unit or 
+     * the string value, the value will be unchanged and a 
+     * <code>DOMException</code> will be raised. 
+     * @param stringType  A string code as defined above. The string code can 
+     *   only be a string unit type (i.e. <code>CSS_STRING</code>, 
+     *   <code>CSS_URI</code>, <code>CSS_IDENT</code>, and 
+     *   <code>CSS_ATTR</code>). 
+     * @param stringValue  The new string value. 
+     * @exception DOMException
+     *    INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a string 
+     *   value or if the string value can't be converted into the specified 
+     *   unit.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly.
+     */
+    public void setStringValue(short stringType, 
+                               String stringValue)
+                               throws DOMException;
+
+    /**
+     *  This method is used to get the string value. If the CSS value doesn't 
+     * contain a string value, a <code>DOMException</code> is raised.  Some 
+     * properties (like 'font-family' or 'voice-family') convert a 
+     * whitespace separated list of idents to a string. 
+     * @return  The string value in the current unit. The current 
+     *   <code>primitiveType</code> can only be a string unit type (i.e. 
+     *   <code>CSS_STRING</code>, <code>CSS_URI</code>, 
+     *   <code>CSS_IDENT</code> and <code>CSS_ATTR</code>). 
+     * @exception DOMException
+     *    INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a string 
+     *   value. 
+     */
+    public String getStringValue()
+                                 throws DOMException;
+
+    /**
+     *  This method is used to get the Counter value. If this CSS value 
+     * doesn't contain a counter value, a <code>DOMException</code> is 
+     * raised. Modification to the corresponding style property can be 
+     * achieved using the <code>Counter</code> interface. 
+     * @return The Counter value.
+     * @exception DOMException
+     *    INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a 
+     *   Counter value (e.g. this is not <code>CSS_COUNTER</code>). 
+     */
+    public Counter getCounterValue()
+                                   throws DOMException;
+
+    /**
+     *  This method is used to get the Rect value. If this CSS value doesn't 
+     * contain a rect value, a <code>DOMException</code> is raised. 
+     * Modification to the corresponding style property can be achieved 
+     * using the <code>Rect</code> interface. 
+     * @return The Rect value.
+     * @exception DOMException
+     *    INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a Rect 
+     *   value. (e.g. this is not <code>CSS_RECT</code>). 
+     */
+    public Rect getRectValue()
+                             throws DOMException;
+
+    /**
+     *  This method is used to get the RGB color. If this CSS value doesn't 
+     * contain a RGB color value, a <code>DOMException</code> is raised. 
+     * Modification to the corresponding style property can be achieved 
+     * using the <code>RGBColor</code> interface. 
+     * @return the RGB color value.
+     * @exception DOMException
+     *    INVALID_ACCESS_ERR: Raised if the attached property can't return a 
+     *   RGB color value (e.g. this is not <code>CSS_RGBCOLOR</code>). 
+     */
+    public RGBColor getRGBColorValue()
+                                     throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSRule.java b/debian/dom2-bindings/org/w3c/dom/css/CSSRule.java
new file mode 100644
index 0000000..2d375e9
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSRule.java
@@ -0,0 +1,105 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>CSSRule</code> interface is the abstract base interface for any 
+ * type of CSS statement. This includes both rule sets and at-rules. An 
+ * implementation is expected to preserve all rules specified in a CSS style 
+ * sheet, even if the rule is not recognized by the parser. Unrecognized 
+ * rules are represented using the <code>CSSUnknownRule</code> interface. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSRule {
+    // RuleType
+    /**
+     * The rule is a <code>CSSUnknownRule</code>.
+     */
+    public static final short UNKNOWN_RULE              = 0;
+    /**
+     * The rule is a <code>CSSStyleRule</code>.
+     */
+    public static final short STYLE_RULE                = 1;
+    /**
+     * The rule is a <code>CSSCharsetRule</code>.
+     */
+    public static final short CHARSET_RULE              = 2;
+    /**
+     * The rule is a <code>CSSImportRule</code>.
+     */
+    public static final short IMPORT_RULE               = 3;
+    /**
+     * The rule is a <code>CSSMediaRule</code>.
+     */
+    public static final short MEDIA_RULE                = 4;
+    /**
+     * The rule is a <code>CSSFontFaceRule</code>.
+     */
+    public static final short FONT_FACE_RULE            = 5;
+    /**
+     * The rule is a <code>CSSPageRule</code>.
+     */
+    public static final short PAGE_RULE                 = 6;
+
+    /**
+     *  The type of the rule, as defined above. The expectation is that 
+     * binding-specific casting methods can be used to cast down from an 
+     * instance of the <code>CSSRule</code> interface to the specific 
+     * derived interface implied by the <code>type</code>. 
+     */
+    public short getType();
+
+    /**
+     *  The parsable textual representation of the rule. This reflects the 
+     * current state of the rule and not its initial value. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error and is unparsable.
+     *   <br>INVALID_MODIFICATION_ERR: Raised if the specified CSS string 
+     *   value represents a different type of rule than the current one.
+     *   <br>HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at 
+     *   this point in the style sheet.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if the rule is readonly.
+     */
+    public String getCssText();
+    /**
+     *  The parsable textual representation of the rule. This reflects the 
+     * current state of the rule and not its initial value. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error and is unparsable.
+     *   <br>INVALID_MODIFICATION_ERR: Raised if the specified CSS string 
+     *   value represents a different type of rule than the current one.
+     *   <br>HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at 
+     *   this point in the style sheet.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if the rule is readonly.
+     */
+    public void setCssText(String cssText)
+                        throws DOMException;
+
+    /**
+     *  The style sheet that contains this rule. 
+     */
+    public CSSStyleSheet getParentStyleSheet();
+
+    /**
+     *  If this rule is contained inside another rule (e.g. a style rule 
+     * inside an @media block), this is the containing rule. If this rule is 
+     * not nested inside any other rules, this returns <code>null</code>. 
+     */
+    public CSSRule getParentRule();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSRuleList.java b/debian/dom2-bindings/org/w3c/dom/css/CSSRuleList.java
new file mode 100644
index 0000000..41c2c68
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSRuleList.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+/**
+ *  The <code>CSSRuleList</code> interface provides the abstraction of an 
+ * ordered collection of CSS rules. 
+ * <p> The items in the <code>CSSRuleList</code> are accessible via an 
+ * integral index, starting from 0. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSRuleList {
+    /**
+     *  The number of <code>CSSRules</code> in the list. The range of valid 
+     * child rule indices is <code>0</code> to <code>length-1</code> 
+     * inclusive. 
+     */
+    public int getLength();
+
+    /**
+     *  Used to retrieve a CSS rule by ordinal index. The order in this 
+     * collection represents the order of the rules in the CSS style sheet. 
+     * If index is greater than or equal to the number of rules in the list, 
+     * this returns <code>null</code>. 
+     * @param index Index into the collection
+     * @return The style rule at the <code>index</code> position in the 
+     *   <code>CSSRuleList</code>, or <code>null</code> if that is not a 
+     *   valid index. 
+     */
+    public CSSRule item(int index);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSStyleDeclaration.java b/debian/dom2-bindings/org/w3c/dom/css/CSSStyleDeclaration.java
new file mode 100644
index 0000000..bcd5229
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSStyleDeclaration.java
@@ -0,0 +1,164 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>CSSStyleDeclaration</code> interface represents a single CSS 
+ * declaration block. This interface may be used to determine the style 
+ * properties currently set in a block or to set style properties explicitly 
+ * within the block. 
+ * <p> While an implementation may not recognize all CSS properties within a 
+ * CSS declaration block, it is expected to provide access to all specified 
+ * properties in the style sheet through the <code>CSSStyleDeclaration</code>
+ *  interface. Furthermore, implementations that support a specific level of 
+ * CSS should correctly handle CSS shorthand properties for that level. For 
+ * a further discussion of shorthand properties, see the 
+ * <code>CSS2Properties</code> interface. 
+ * <p> This interface is also used to provide a read-only access to the 
+ * computed values of an element. See also the <code>ViewCSS</code> 
+ * interface.  The CSS Object Model doesn't provide an access to the 
+ * specified or actual values of the CSS cascade. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSStyleDeclaration {
+    /**
+     *  The parsable textual representation of the declaration block 
+     * (excluding the surrounding curly braces). Setting this attribute will 
+     * result in the parsing of the new value and resetting of all the 
+     * properties in the declaration block including the removal or addition 
+     * of properties. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is 
+     *   readonly or a property is readonly.
+     */
+    public String getCssText();
+    /**
+     *  The parsable textual representation of the declaration block 
+     * (excluding the surrounding curly braces). Setting this attribute will 
+     * result in the parsing of the new value and resetting of all the 
+     * properties in the declaration block including the removal or addition 
+     * of properties. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is 
+     *   readonly or a property is readonly.
+     */
+    public void setCssText(String cssText)
+                       throws DOMException;
+
+    /**
+     *  Used to retrieve the value of a CSS property if it has been explicitly 
+     * set within this declaration block. 
+     * @param propertyName  The name of the CSS property. See the CSS 
+     *   property index. 
+     * @return  Returns the value of the property if it has been explicitly 
+     *   set for this declaration block. Returns the empty string if the 
+     *   property has not been set. 
+     */
+    public String getPropertyValue(String propertyName);
+
+    /**
+     *  Used to retrieve the object representation of the value of a CSS 
+     * property if it has been explicitly set within this declaration block. 
+     * This method returns <code>null</code> if the property is a shorthand 
+     * property. Shorthand property values can only be accessed and modified 
+     * as strings, using the <code>getPropertyValue</code> and 
+     * <code>setProperty</code> methods. 
+     * @param propertyName  The name of the CSS property. See the CSS 
+     *   property index. 
+     * @return  Returns the value of the property if it has been explicitly 
+     *   set for this declaration block. Returns <code>null</code> if the 
+     *   property has not been set. 
+     */
+    public CSSValue getPropertyCSSValue(String propertyName);
+
+    /**
+     *  Used to remove a CSS property if it has been explicitly set within 
+     * this declaration block. 
+     * @param propertyName  The name of the CSS property. See the CSS 
+     *   property index. 
+     * @return  Returns the value of the property if it has been explicitly 
+     *   set for this declaration block. Returns the empty string if the 
+     *   property has not been set or the property name does not correspond 
+     *   to a known CSS property. 
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is readonly 
+     *   or the property is readonly.
+     */
+    public String removeProperty(String propertyName)
+                                 throws DOMException;
+
+    /**
+     *  Used to retrieve the priority of a CSS property (e.g. the 
+     * <code>"important"</code> qualifier) if the property has been 
+     * explicitly set in this declaration block. 
+     * @param propertyName  The name of the CSS property. See the CSS 
+     *   property index. 
+     * @return  A string representing the priority (e.g. 
+     *   <code>"important"</code>) if one exists. The empty string if none 
+     *   exists. 
+     */
+    public String getPropertyPriority(String propertyName);
+
+    /**
+     *  Used to set a property value and priority within this declaration 
+     * block. 
+     * @param propertyName  The name of the CSS property. See the CSS 
+     *   property index. 
+     * @param value  The new value of the property. 
+     * @param priority  The new priority of the property (e.g. 
+     *   <code>"important"</code>).  
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified value has a syntax error and is 
+     *   unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is 
+     *   readonly or the property is readonly.
+     */
+    public void setProperty(String propertyName, 
+                            String value, 
+                            String priority)
+                            throws DOMException;
+
+    /**
+     *  The number of properties that have been explicitly set in this 
+     * declaration block. The range of valid indices is 0 to length-1 
+     * inclusive. 
+     */
+    public int getLength();
+
+    /**
+     *  Used to retrieve the properties that have been explicitly set in this 
+     * declaration block. The order of the properties retrieved using this 
+     * method does not have to be the order in which they were set. This 
+     * method can be used to iterate over all properties in this declaration 
+     * block. 
+     * @param index  Index of the property name to retrieve. 
+     * @return  The name of the property at this ordinal position. The empty 
+     *   string if no property exists at this position. 
+     */
+    public String item(int index);
+
+    /**
+     *  The CSS rule that contains this declaration block or <code>null</code> 
+     * if this <code>CSSStyleDeclaration</code> is not attached to a 
+     * <code>CSSRule</code>. 
+     */
+    public CSSRule getParentRule();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSStyleRule.java b/debian/dom2-bindings/org/w3c/dom/css/CSSStyleRule.java
new file mode 100644
index 0000000..e3e0cd8
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSStyleRule.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>CSSStyleRule</code> interface represents a single rule set in a 
+ * CSS style sheet. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSStyleRule extends CSSRule {
+    /**
+     *  The textual representation of the selector for the rule set. The 
+     * implementation may have stripped out insignificant whitespace while 
+     * parsing the selector. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is readonly.
+     */
+    public String getSelectorText();
+    /**
+     *  The textual representation of the selector for the rule set. The 
+     * implementation may have stripped out insignificant whitespace while 
+     * parsing the selector. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is readonly.
+     */
+    public void setSelectorText(String selectorText)
+                        throws DOMException;
+
+    /**
+     *  The declaration-block of this rule set. 
+     */
+    public CSSStyleDeclaration getStyle();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSStyleSheet.java b/debian/dom2-bindings/org/w3c/dom/css/CSSStyleSheet.java
new file mode 100644
index 0000000..b529e5d
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSStyleSheet.java
@@ -0,0 +1,85 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+import org.w3c.dom.stylesheets.StyleSheet;
+
+/**
+ *  The <code>CSSStyleSheet</code> interface is a concrete interface used to 
+ * represent a CSS style sheet i.e., a style sheet whose content type is 
+ * "text/css". 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSStyleSheet extends StyleSheet {
+    /**
+     *  If this style sheet comes from an <code>@import</code> rule, the 
+     * <code>ownerRule</code> attribute will contain the 
+     * <code>CSSImportRule</code>. In that case, the <code>ownerNode</code> 
+     * attribute in the <code>StyleSheet</code> interface will be 
+     * <code>null</code>. If the style sheet comes from an element or a 
+     * processing instruction, the <code>ownerRule</code> attribute will be 
+     * <code>null</code> and the <code>ownerNode</code> attribute will 
+     * contain the <code>Node</code>. 
+     */
+    public CSSRule getOwnerRule();
+
+    /**
+     *  The list of all CSS rules contained within the style sheet. This 
+     * includes both rule sets and at-rules. 
+     */
+    public CSSRuleList getCssRules();
+
+    /**
+     *  Used to insert a new rule into the style sheet. The new rule now 
+     * becomes part of the cascade. 
+     * @param rule  The parsable text representing the rule. For rule sets 
+     *   this contains both the selector and the style declaration. For 
+     *   at-rules, this specifies both the at-identifier and the rule 
+     *   content. 
+     * @param index  The index within the style sheet's rule list of the rule 
+     *   before which to insert the specified rule. If the specified index 
+     *   is equal to the length of the style sheet's rule collection, the 
+     *   rule will be added to the end of the style sheet. 
+     * @return  The index within the style sheet's rule collection of the 
+     *   newly inserted rule. 
+     * @exception DOMException
+     *   HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at the 
+     *   specified index e.g. if an <code>@import</code> rule is inserted 
+     *   after a standard rule set or other at-rule.
+     *   <br>INDEX_SIZE_ERR: Raised if the specified index is not a valid 
+     *   insertion point.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this style sheet is 
+     *   readonly.
+     *   <br>SYNTAX_ERR: Raised if the specified rule has a syntax error and 
+     *   is unparsable.
+     */
+    public int insertRule(String rule, 
+                          int index)
+                          throws DOMException;
+
+    /**
+     *  Used to delete a rule from the style sheet. 
+     * @param index  The index within the style sheet's rule list of the rule 
+     *   to remove. 
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if the specified index does not correspond to 
+     *   a rule in the style sheet's rule list.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this style sheet is 
+     *   readonly.
+     */
+    public void deleteRule(int index)
+                           throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSUnknownRule.java b/debian/dom2-bindings/org/w3c/dom/css/CSSUnknownRule.java
new file mode 100644
index 0000000..763d5f1
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSUnknownRule.java
@@ -0,0 +1,22 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+/**
+ *  The <code>CSSUnknownRule</code> interface represents an at-rule not 
+ * supported by this user agent. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSUnknownRule extends CSSRule {
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSValue.java b/debian/dom2-bindings/org/w3c/dom/css/CSSValue.java
new file mode 100644
index 0000000..48b2fbd
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSValue.java
@@ -0,0 +1,78 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>CSSValue</code> interface represents a simple or a complex 
+ * value. A <code>CSSValue</code> object only occurs in a context of a CSS 
+ * property. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSValue {
+    // UnitTypes
+    /**
+     * The value is inherited and the <code>cssText</code> contains "inherit".
+     */
+    public static final short CSS_INHERIT               = 0;
+    /**
+     * The value is a primitive value and an instance of the 
+     * <code>CSSPrimitiveValue</code> interface can be obtained by using 
+     * binding-specific casting methods on this instance of the 
+     * <code>CSSValue</code> interface.
+     */
+    public static final short CSS_PRIMITIVE_VALUE       = 1;
+    /**
+     * The value is a <code>CSSValue</code> list and an instance of the 
+     * <code>CSSValueList</code> interface can be obtained by using 
+     * binding-specific casting methods on this instance of the 
+     * <code>CSSValue</code> interface.
+     */
+    public static final short CSS_VALUE_LIST            = 2;
+    /**
+     * The value is a custom value.
+     */
+    public static final short CSS_CUSTOM                = 3;
+
+    /**
+     *  A string representation of the current value. 
+     * @exception DOMException
+     *    SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error (according to the attached property) or is unparsable. 
+     *   <br>INVALID_MODIFICATION_ERR: Raised if the specified CSS string 
+     *   value represents a different type of values than the values allowed 
+     *   by the CSS property.
+     *   <br> NO_MODIFICATION_ALLOWED_ERR: Raised if this value is readonly. 
+     */
+    public String getCssText();
+    /**
+     *  A string representation of the current value. 
+     * @exception DOMException
+     *    SYNTAX_ERR: Raised if the specified CSS string value has a syntax 
+     *   error (according to the attached property) or is unparsable. 
+     *   <br>INVALID_MODIFICATION_ERR: Raised if the specified CSS string 
+     *   value represents a different type of values than the values allowed 
+     *   by the CSS property.
+     *   <br> NO_MODIFICATION_ALLOWED_ERR: Raised if this value is readonly. 
+     */
+    public void setCssText(String cssText)
+                       throws DOMException;
+
+    /**
+     *  A code defining the type of the value as defined above. 
+     */
+    public short getCssValueType();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/CSSValueList.java b/debian/dom2-bindings/org/w3c/dom/css/CSSValueList.java
new file mode 100644
index 0000000..bf15bb3
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/CSSValueList.java
@@ -0,0 +1,46 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+/**
+ * The <code>CSSValueList</code> interface provides the abstraction of an 
+ * ordered collection of CSS values.
+ * <p> Some properties allow an empty list into their syntax. In that case, 
+ * these properties take the <code>none</code> identifier. So, an empty list 
+ * means that the property has the value <code>none</code>. 
+ * <p> The items in the <code>CSSValueList</code> are accessible via an 
+ * integral index, starting from 0. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface CSSValueList extends CSSValue {
+    /**
+     * The number of <code>CSSValues</code> in the list. The range of valid 
+     * values of the indices is <code>0</code> to <code>length-1</code> 
+     * inclusive.
+     */
+    public int getLength();
+
+    /**
+     * Used to retrieve a <code>CSSValue</code> by ordinal index. The order in 
+     * this collection represents the order of the values in the CSS style 
+     * property. If index is greater than or equal to the number of values 
+     * in the list, this returns <code>null</code>.
+     * @param index Index into the collection.
+     * @return The <code>CSSValue</code> at the <code>index</code> position 
+     *   in the <code>CSSValueList</code>, or <code>null</code> if that is 
+     *   not a valid index.
+     */
+    public CSSValue item(int index);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/Counter.java b/debian/dom2-bindings/org/w3c/dom/css/Counter.java
new file mode 100644
index 0000000..8cd4967
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/Counter.java
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+/**
+ *  The <code>Counter</code> interface is used to represent any counter or 
+ * counters function value. This interface reflects the values in the 
+ * underlying style property. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface Counter {
+    /**
+     *  This attribute is used for the identifier of the counter. 
+     */
+    public String getIdentifier();
+
+    /**
+     *  This attribute is used for the style of the list. 
+     */
+    public String getListStyle();
+
+    /**
+     *  This attribute is used for the separator of the nested counters. 
+     */
+    public String getSeparator();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/DOMImplementationCSS.java b/debian/dom2-bindings/org/w3c/dom/css/DOMImplementationCSS.java
new file mode 100644
index 0000000..65c9729
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/DOMImplementationCSS.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.DOMImplementation;
+import org.w3c.dom.DOMException;
+
+/**
+ *  This interface allows the DOM user to create a <code>CSSStyleSheet</code> 
+ * outside the context of a document. There is no way to associate the new 
+ * <code>CSSStyleSheet</code> with a document in DOM Level 2. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM   Level 2
+ */
+public interface DOMImplementationCSS extends DOMImplementation {
+    /**
+     * Creates a new <code>CSSStyleSheet</code>.
+     * @param title  The advisory title. See also the  section. 
+     * @param media  The comma-separated list of media associated with the 
+     *   new style sheet. See also the  section. 
+     * @return A new CSS style sheet.
+     * @exception DOMException
+     *    SYNTAX_ERR: Raised if the specified media string value has a syntax 
+     *   error and is unparsable. 
+     */
+    public CSSStyleSheet createCSSStyleSheet(String title, 
+                                             String media)
+                                             throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/DocumentCSS.java b/debian/dom2-bindings/org/w3c/dom/css/DocumentCSS.java
new file mode 100644
index 0000000..8fe93c7
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/DocumentCSS.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.Element;
+import org.w3c.dom.stylesheets.DocumentStyle;
+
+/**
+ * This interface represents a document with a CSS view.
+ * <p> The <code>getOverrideStyle</code> method provides a mechanism through 
+ * which a DOM author could effect immediate change to the style of an 
+ * element without modifying the explicitly linked style sheets of a 
+ * document or the inline style of elements in the style sheets. This style 
+ * sheet comes after the author style sheet in the cascade algorithm and is 
+ * called override style sheet. The override style sheet takes precedence 
+ * over author style sheets. An "!important" declaration still takes 
+ * precedence over a normal declaration. Override, author, and user style 
+ * sheets all may contain "!important" declarations. User "!important" rules 
+ * take precedence over both override and author "!important" rules, and 
+ * override "!important" rules take precedence over author "!important" 
+ * rules. 
+ * <p> The expectation is that an instance of the <code>DocumentCSS</code> 
+ * interface can be obtained by using binding-specific casting methods on an 
+ * instance of the <code>Document</code> interface. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface DocumentCSS extends DocumentStyle {
+    /**
+     *  This method is used to retrieve the override style declaration for a 
+     * specified element and a specified pseudo-element. 
+     * @param elt  The element whose style is to be modified. This parameter 
+     *   cannot be null. 
+     * @param pseudoElt  The pseudo-element or <code>null</code> if none. 
+     * @return  The override style declaration. 
+     */
+    public CSSStyleDeclaration getOverrideStyle(Element elt, 
+                                                String pseudoElt);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/ElementCSSInlineStyle.java b/debian/dom2-bindings/org/w3c/dom/css/ElementCSSInlineStyle.java
new file mode 100644
index 0000000..98b60bf
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/ElementCSSInlineStyle.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+/**
+ *  Inline style information attached to elements is exposed through the 
+ * <code>style</code> attribute. This represents the contents of the STYLE 
+ * attribute for HTML elements (or elements in other schemas or DTDs which 
+ * use the STYLE attribute in the same way). The expectation is that an 
+ * instance of the ElementCSSInlineStyle interface can be obtained by using 
+ * binding-specific casting methods on an instance of the Element interface 
+ * when the element supports inline CSS style informations. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface ElementCSSInlineStyle {
+    /**
+     *  The style attribute. 
+     */
+    public CSSStyleDeclaration getStyle();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/RGBColor.java b/debian/dom2-bindings/org/w3c/dom/css/RGBColor.java
new file mode 100644
index 0000000..cd5daa5
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/RGBColor.java
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+/**
+ *  The <code>RGBColor</code> interface is used to represent any RGB color 
+ * value. This interface reflects the values in the underlying style 
+ * property. Hence, modifications made to the <code>CSSPrimitiveValue</code> 
+ * objects modify the style property. 
+ * <p> A specified RGB color is not clipped (even if the number is outside the 
+ * range 0-255 or 0%-100%). A computed RGB color is clipped depending on the 
+ * device. 
+ * <p> Even if a style sheet can only contain an integer for a color value, 
+ * the internal storage of this integer is a float, and this can be used as 
+ * a float in the specified or the computed style. 
+ * <p> A color percentage value can always be converted to a number and vice 
+ * versa. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface RGBColor {
+    /**
+     *  This attribute is used for the red value of the RGB color. 
+     */
+    public CSSPrimitiveValue getRed();
+
+    /**
+     *  This attribute is used for the green value of the RGB color. 
+     */
+    public CSSPrimitiveValue getGreen();
+
+    /**
+     *  This attribute is used for the blue value of the RGB color. 
+     */
+    public CSSPrimitiveValue getBlue();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/Rect.java b/debian/dom2-bindings/org/w3c/dom/css/Rect.java
new file mode 100644
index 0000000..f5efb10
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/Rect.java
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+/**
+ *  The <code>Rect</code> interface is used to represent any rect value. This 
+ * interface reflects the values in the underlying style property. Hence, 
+ * modifications made to the <code>CSSPrimitiveValue</code> objects modify 
+ * the style property. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface Rect {
+    /**
+     *  This attribute is used for the top of the rect. 
+     */
+    public CSSPrimitiveValue getTop();
+
+    /**
+     *  This attribute is used for the right of the rect. 
+     */
+    public CSSPrimitiveValue getRight();
+
+    /**
+     *  This attribute is used for the bottom of the rect. 
+     */
+    public CSSPrimitiveValue getBottom();
+
+    /**
+     *  This attribute is used for the left of the rect. 
+     */
+    public CSSPrimitiveValue getLeft();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/css/ViewCSS.java b/debian/dom2-bindings/org/w3c/dom/css/ViewCSS.java
new file mode 100644
index 0000000..0f7e88f
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/css/ViewCSS.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.css;
+
+import org.w3c.dom.Element;
+import org.w3c.dom.views.AbstractView;
+
+/**
+ *  This interface represents a CSS view. The <code>getComputedStyle</code> 
+ * method provides a read only access to the computed values of an element. 
+ * <p> The expectation is that an instance of the <code>ViewCSS</code> 
+ * interface can be obtained by using binding-specific casting methods on an 
+ * instance of the <code>AbstractView</code> interface. 
+ * <p> Since a computed style is related to an <code>Element</code> node, if 
+ * this element is removed from the document, the associated 
+ * <code>CSSStyleDeclaration</code> and <code>CSSValue</code> related to 
+ * this declaration are no longer valid. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface ViewCSS extends AbstractView {
+    /**
+     *  This method is used to get the computed style as it is defined in . 
+     * @param elt  The element whose style is to be computed. This parameter 
+     *   cannot be null. 
+     * @param pseudoElt  The pseudo-element or <code>null</code> if none. 
+     * @return  The computed style. The <code>CSSStyleDeclaration</code> is 
+     *   read-only and contains only absolute values. 
+     */
+    public CSSStyleDeclaration getComputedStyle(Element elt, 
+                                                String pseudoElt);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/events/DocumentEvent.java b/debian/dom2-bindings/org/w3c/dom/events/DocumentEvent.java
new file mode 100644
index 0000000..76644bc
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/events/DocumentEvent.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.events;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>DocumentEvent</code> interface provides a mechanism by which the 
+ * user can create an Event of a type supported by the implementation. It is 
+ * expected that the <code>DocumentEvent</code> interface will be 
+ * implemented on the same object which implements the <code>Document</code> 
+ * interface in an implementation which supports the Event model. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
+ * @since DOM Level 2
+ */
+public interface DocumentEvent {
+    /**
+     * 
+     * @param eventType The <code>eventType</code> parameter specifies the 
+     *   type of <code>Event</code> interface to be created. If the 
+     *   <code>Event</code> interface specified is supported by the 
+     *   implementation this method will return a new <code>Event</code> of 
+     *   the interface type requested. If the <code>Event</code> is to be 
+     *   dispatched via the <code>dispatchEvent</code> method the 
+     *   appropriate event init method must be called after creation in 
+     *   order to initialize the <code>Event</code>'s values. As an example, 
+     *   a user wishing to synthesize some kind of <code>UIEvent</code> 
+     *   would call <code>createEvent</code> with the parameter "UIEvents". 
+     *   The <code>initUIEvent</code> method could then be called on the 
+     *   newly created <code>UIEvent</code> to set the specific type of 
+     *   UIEvent to be dispatched and set its context information.The 
+     *   <code>createEvent</code> method is used in creating 
+     *   <code>Event</code>s when it is either inconvenient or unnecessary 
+     *   for the user to create an <code>Event</code> themselves. In cases 
+     *   where the implementation provided <code>Event</code> is 
+     *   insufficient, users may supply their own <code>Event</code> 
+     *   implementations for use with the <code>dispatchEvent</code> method.
+     * @return The newly created <code>Event</code>
+     * @exception DOMException
+     *   NOT_SUPPORTED_ERR: Raised if the implementation does not support the 
+     *   type of <code>Event</code> interface requested
+     */
+    public Event createEvent(String eventType)
+                             throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/events/Event.java b/debian/dom2-bindings/org/w3c/dom/events/Event.java
new file mode 100644
index 0000000..14a9239
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/events/Event.java
@@ -0,0 +1,141 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.events;
+
+/**
+ * The <code>Event</code> interface is used to provide contextual information 
+ * about an event to the handler processing the event. An object which 
+ * implements the <code>Event</code> interface is generally passed as the 
+ * first parameter to an event handler. More specific context information is 
+ * passed to event handlers by deriving additional interfaces from 
+ * <code>Event</code> which contain information directly relating to the 
+ * type of event they accompany. These derived interfaces are also 
+ * implemented by the object passed to the event listener. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
+ * @since DOM Level 2
+ */
+public interface Event {
+    // PhaseType
+    /**
+     * The current event phase is the capturing phase.
+     */
+    public static final short CAPTURING_PHASE           = 1;
+    /**
+     * The event is currently being evaluated at the target 
+     * <code>EventTarget</code>.
+     */
+    public static final short AT_TARGET                 = 2;
+    /**
+     * The current event phase is the bubbling phase.
+     */
+    public static final short BUBBLING_PHASE            = 3;
+
+    /**
+     * The name of the event (case-insensitive). The name must be an XML name.
+     */
+    public String getType();
+
+    /**
+     * Used to indicate the <code>EventTarget</code> to which the event was 
+     * originally dispatched. 
+     */
+    public EventTarget getTarget();
+
+    /**
+     * Used to indicate the <code>EventTarget</code> whose 
+     * <code>EventListeners</code> are currently being processed. This is 
+     * particularly useful during capturing and bubbling. 
+     */
+    public EventTarget getCurrentTarget();
+
+    /**
+     * Used to indicate which phase of event flow is currently being 
+     * evaluated. 
+     */
+    public short getEventPhase();
+
+    /**
+     * Used to indicate whether or not an event is a bubbling event. If the 
+     * event can bubble the value is true, else the value is false. 
+     */
+    public boolean getBubbles();
+
+    /**
+     * Used to indicate whether or not an event can have its default action 
+     * prevented. If the default action can be prevented the value is true, 
+     * else the value is false. 
+     */
+    public boolean getCancelable();
+
+    /**
+     *  Used to specify the time (in milliseconds relative to the epoch) at 
+     * which the event was created. Due to the fact that some systems may 
+     * not provide this information the value of <code>timeStamp</code> may 
+     * be not available for all events. When not available, a value of 0 
+     * will be returned. Examples of epoch time are the time of the system 
+     * start or 0:0:0 UTC 1st January 1970. 
+     */
+    public long getTimeStamp();
+
+    /**
+     * The <code>stopPropagation</code> method is used prevent further 
+     * propagation of an event during event flow. If this method is called 
+     * by any <code>EventListener</code> the event will cease propagating 
+     * through the tree. The event will complete dispatch to all listeners 
+     * on the current <code>EventTarget</code> before event flow stops. This 
+     * method may be used during any stage of event flow.
+     */
+    public void stopPropagation();
+
+    /**
+     * If an event is cancelable, the <code>preventDefault</code> method is 
+     * used to signify that the event is to be canceled, meaning any default 
+     * action normally taken by the implementation as a result of the event 
+     * will not occur. If, during any stage of event flow, the 
+     * <code>preventDefault</code> method is called the event is canceled. 
+     * Any default action associated with the event will not occur. Calling 
+     * this method for a non-cancelable event has no effect. Once 
+     * <code>preventDefault</code> has been called it will remain in effect 
+     * throughout the remainder of the event's propagation. This method may 
+     * be used during any stage of event flow. 
+     */
+    public void preventDefault();
+
+    /**
+     * The <code>initEvent</code> method is used to initialize the value of an 
+     * <code>Event</code> created through the <code>DocumentEvent</code> 
+     * interface. This method may only be called before the 
+     * <code>Event</code> has been dispatched via the 
+     * <code>dispatchEvent</code> method, though it may be called multiple 
+     * times during that phase if necessary. If called multiple times the 
+     * final invocation takes precedence. If called from a subclass of 
+     * <code>Event</code> interface only the values specified in the 
+     * <code>initEvent</code> method are modified, all other attributes are 
+     * left unchanged.
+     * @param eventTypeArg Specifies the event type. This type may be any 
+     *   event type currently defined in this specification or a new event 
+     *   type.. The string must be an XML name. Any new event type must not 
+     *   begin with any upper, lower, or mixed case version of the string 
+     *   "DOM". This prefix is reserved for future DOM event sets. It is 
+     *   also strongly recommended that third parties adding their own 
+     *   events use their own prefix to avoid confusion and lessen the 
+     *   probability of conflicts with other new events.
+     * @param canBubbleArg Specifies whether or not the event can bubble.
+     * @param cancelableArg Specifies whether or not the event's default 
+     *   action can be prevented.
+     */
+    public void initEvent(String eventTypeArg, 
+                          boolean canBubbleArg, 
+                          boolean cancelableArg);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/events/EventException.java b/debian/dom2-bindings/org/w3c/dom/events/EventException.java
new file mode 100644
index 0000000..7a6ff26
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/events/EventException.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.events;
+
+/**
+ *  Event operations may throw an <code>EventException</code> as specified in 
+ * their method descriptions. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
+ * @since DOM Level 2
+ */
+public class EventException extends RuntimeException {
+    public EventException(short code, String message) {
+       super(message);
+       this.code = code;
+    }
+    public short   code;
+    // EventExceptionCode
+    /**
+     *  If the <code>Event</code>'s type was not specified by initializing the 
+     * event before the method was called. Specification of the Event's type 
+     * as <code>null</code> or an empty string will also trigger this 
+     * exception. 
+     */
+    public static final short UNSPECIFIED_EVENT_TYPE_ERR = 0;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/events/EventListener.java b/debian/dom2-bindings/org/w3c/dom/events/EventListener.java
new file mode 100644
index 0000000..1df8020
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/events/EventListener.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.events;
+
+/**
+ *  The <code>EventListener</code> interface is the primary method for 
+ * handling events. Users implement the <code>EventListener</code> interface 
+ * and register their listener on an <code>EventTarget</code> using the 
+ * <code>AddEventListener</code> method. The users should also remove their 
+ * <code>EventListener</code> from its <code>EventTarget</code> after they 
+ * have completed using the listener. 
+ * <p> When a <code>Node</code> is copied using the <code>cloneNode</code> 
+ * method the <code>EventListener</code>s attached to the source 
+ * <code>Node</code> are not attached to the copied <code>Node</code>. If 
+ * the user wishes the same <code>EventListener</code>s to be added to the 
+ * newly created copy the user must add them manually. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
+ * @since DOM Level 2
+ */
+public interface EventListener {
+    /**
+     *  This method is called whenever an event occurs of the type for which 
+     * the <code> EventListener</code> interface was registered. 
+     * @param evt  The <code>Event</code> contains contextual information 
+     *   about the event. It also contains the <code>stopPropagation</code> 
+     *   and <code>preventDefault</code> methods which are used in 
+     *   determining the event's flow and default action. 
+     */
+    public void handleEvent(Event evt);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/events/EventTarget.java b/debian/dom2-bindings/org/w3c/dom/events/EventTarget.java
new file mode 100644
index 0000000..f076636
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/events/EventTarget.java
@@ -0,0 +1,102 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.events;
+
+/**
+ *  The <code>EventTarget</code> interface is implemented by all 
+ * <code>Nodes</code> in an implementation which supports the DOM Event 
+ * Model. Therefore, this interface can be obtained by using 
+ * binding-specific casting methods on an instance of the <code>Node</code> 
+ * interface. The interface allows registration and removal of 
+ * <code>EventListeners</code> on an <code>EventTarget</code> and dispatch 
+ * of events to that <code>EventTarget</code>.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
+ * @since DOM Level 2
+ */
+public interface EventTarget {
+    /**
+     * This method allows the registration of event listeners on the event 
+     * target. If an <code>EventListener</code> is added to an 
+     * <code>EventTarget</code> while it is processing an event, it will not 
+     * be triggered by the current actions but may be triggered during a 
+     * later stage of event flow, such as the bubbling phase. 
+     * <br> If multiple identical <code>EventListener</code>s are registered 
+     * on the same <code>EventTarget</code> with the same parameters the 
+     * duplicate instances are discarded. They do not cause the 
+     * <code>EventListener</code> to be called twice and since they are 
+     * discarded they do not need to be removed with the 
+     * <code>removeEventListener</code> method. 
+     * @param type The event type for which the user is registering
+     * @param listener The <code>listener</code> parameter takes an interface 
+     *   implemented by the user which contains the methods to be called 
+     *   when the event occurs.
+     * @param useCapture If true, <code>useCapture</code> indicates that the 
+     *   user wishes to initiate capture. After initiating capture, all 
+     *   events of the specified type will be dispatched to the registered 
+     *   <code>EventListener</code> before being dispatched to any 
+     *   <code>EventTargets</code> beneath them in the tree. Events which 
+     *   are bubbling upward through the tree will not trigger an 
+     *   <code>EventListener</code> designated to use capture.
+     */
+    public void addEventListener(String type, 
+                                 EventListener listener, 
+                                 boolean useCapture);
+
+    /**
+     * This method allows the removal of event listeners from the event 
+     * target. If an <code>EventListener</code> is removed from an 
+     * <code>EventTarget</code> while it is processing an event, it will not 
+     * be triggered by the current actions. <code>EventListener</code>s can 
+     * never be invoked after being removed.
+     * <br>Calling <code>removeEventListener</code> with arguments which do 
+     * not identify any currently registered <code>EventListener</code> on 
+     * the <code>EventTarget</code> has no effect.
+     * @param type Specifies the event type of the <code>EventListener</code> 
+     *   being removed. 
+     * @param listener The <code>EventListener</code> parameter indicates the 
+     *   <code>EventListener </code> to be removed. 
+     * @param useCapture Specifies whether the <code>EventListener</code> 
+     *   being removed was registered as a capturing listener or not. If a 
+     *   listener was registered twice, one with capture and one without, 
+     *   each must be removed separately. Removal of a capturing listener 
+     *   does not affect a non-capturing version of the same listener, and 
+     *   vice versa. 
+     */
+    public void removeEventListener(String type, 
+                                    EventListener listener, 
+                                    boolean useCapture);
+
+    /**
+     * This method allows the dispatch of events into the implementations 
+     * event model. Events dispatched in this manner will have the same 
+     * capturing and bubbling behavior as events dispatched directly by the 
+     * implementation. The target of the event is the 
+     * <code> EventTarget</code> on which <code>dispatchEvent</code> is 
+     * called. 
+     * @param evt Specifies the event type, behavior, and contextual 
+     *   information to be used in processing the event.
+     * @return The return value of <code>dispatchEvent</code> indicates 
+     *   whether any of the listeners which handled the event called 
+     *   <code>preventDefault</code>. If <code>preventDefault</code> was 
+     *   called the value is false, else the value is true. 
+     * @exception EventException
+     *   UNSPECIFIED_EVENT_TYPE_ERR: Raised if the <code>Event</code>'s type 
+     *   was not specified by initializing the event before 
+     *   <code>dispatchEvent</code> was called. Specification of the 
+     *   <code>Event</code>'s type as <code>null</code> or an empty string 
+     *   will also trigger this exception.
+     */
+    public boolean dispatchEvent(Event evt)
+                                 throws EventException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/events/MouseEvent.java b/debian/dom2-bindings/org/w3c/dom/events/MouseEvent.java
new file mode 100644
index 0000000..be78035
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/events/MouseEvent.java
@@ -0,0 +1,156 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.events;
+
+import org.w3c.dom.views.AbstractView;
+
+/**
+ * The <code>MouseEvent</code> interface provides specific contextual 
+ * information associated with Mouse events.
+ * <p>The <code>detail</code> attribute inherited from <code>UIEvent</code> 
+ * indicates the number of times a mouse button has been pressed and 
+ * released over the same screen location during a user action. The 
+ * attribute value is 1 when the user begins this action and increments by 1 
+ * for each full sequence of pressing and releasing. If the user moves the 
+ * mouse between the mousedown and mouseup the value will be set to 0, 
+ * indicating that no click is occurring.
+ * <p>In the case of nested elements mouse events are always targeted at the 
+ * most deeply nested element. Ancestors of the targeted element may use 
+ * bubbling to obtain notification of mouse events which occur within its 
+ * descendent elements.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
+ * @since DOM Level 2
+ */
+public interface MouseEvent extends UIEvent {
+    /**
+     * The horizontal coordinate at which the event occurred relative to the 
+     * origin of the screen coordinate system.
+     */
+    public int getScreenX();
+
+    /**
+     * The vertical coordinate at which the event occurred relative to the 
+     * origin of the screen coordinate system.
+     */
+    public int getScreenY();
+
+    /**
+     * The horizontal coordinate at which the event occurred relative to the 
+     * DOM implementation's client area.
+     */
+    public int getClientX();
+
+    /**
+     * The vertical coordinate at which the event occurred relative to the DOM 
+     * implementation's client area.
+     */
+    public int getClientY();
+
+    /**
+     * Used to indicate whether the 'ctrl' key was depressed during the firing 
+     * of the event.
+     */
+    public boolean getCtrlKey();
+
+    /**
+     * Used to indicate whether the 'shift' key was depressed during the 
+     * firing of the event.
+     */
+    public boolean getShiftKey();
+
+    /**
+     * Used to indicate whether the 'alt' key was depressed during the firing 
+     * of the event. On some platforms this key may map to an alternative 
+     * key name.
+     */
+    public boolean getAltKey();
+
+    /**
+     * Used to indicate whether the 'meta' key was depressed during the firing 
+     * of the event. On some platforms this key may map to an alternative 
+     * key name.
+     */
+    public boolean getMetaKey();
+
+    /**
+     * During mouse events caused by the depression or release of a mouse 
+     * button, <code>button</code> is used to indicate which mouse button 
+     * changed state. The values for <code>button</code> range from zero to 
+     * indicate the left button of the mouse, one to indicate the middle 
+     * button if present, and two to indicate the right button. For mice 
+     * configured for left handed use in which the button actions are 
+     * reversed the values are instead read from right to left.
+     */
+    public short getButton();
+
+    /**
+     * Used to identify a secondary <code>EventTarget</code> related to a UI 
+     * event. Currently this attribute is used with the mouseover event to 
+     * indicate the <code>EventTarget</code> which the pointing device 
+     * exited and with the mouseout event to indicate the 
+     * <code>EventTarget</code> which the pointing device entered.
+     */
+    public EventTarget getRelatedTarget();
+
+    /**
+     * The <code>initMouseEvent</code> method is used to initialize the value 
+     * of a <code>MouseEvent</code> created through the 
+     * <code>DocumentEvent</code> interface. This method may only be called 
+     * before the <code>MouseEvent</code> has been dispatched via the 
+     * <code>dispatchEvent</code> method, though it may be called multiple 
+     * times during that phase if necessary. If called multiple times, the 
+     * final invocation takes precedence.
+     * @param typeArg Specifies the event type.
+     * @param canBubbleArg Specifies whether or not the event can bubble.
+     * @param cancelableArg Specifies whether or not the event's default 
+     *   action can be prevented.
+     * @param viewArg Specifies the <code>Event</code>'s 
+     *   <code>AbstractView</code>.
+     * @param detailArg Specifies the <code>Event</code>'s mouse click count.
+     * @param screenXArg Specifies the <code>Event</code>'s screen x 
+     *   coordinate
+     * @param screenYArg Specifies the <code>Event</code>'s screen y 
+     *   coordinate
+     * @param clientXArg Specifies the <code>Event</code>'s client x 
+     *   coordinate
+     * @param clientYArg Specifies the <code>Event</code>'s client y 
+     *   coordinate
+     * @param ctrlKeyArg Specifies whether or not control key was depressed 
+     *   during the <code>Event</code>.
+     * @param altKeyArg Specifies whether or not alt key was depressed during 
+     *   the <code>Event</code>.
+     * @param shiftKeyArg Specifies whether or not shift key was depressed 
+     *   during the <code>Event</code>.
+     * @param metaKeyArg Specifies whether or not meta key was depressed 
+     *   during the <code>Event</code>.
+     * @param buttonArg Specifies the <code>Event</code>'s mouse button.
+     * @param relatedTargetArg Specifies the <code>Event</code>'s related 
+     *   <code>EventTarget</code>.
+     */
+    public void initMouseEvent(String typeArg, 
+                               boolean canBubbleArg, 
+                               boolean cancelableArg, 
+                               AbstractView viewArg, 
+                               int detailArg, 
+                               int screenXArg, 
+                               int screenYArg, 
+                               int clientXArg, 
+                               int clientYArg, 
+                               boolean ctrlKeyArg, 
+                               boolean altKeyArg, 
+                               boolean shiftKeyArg, 
+                               boolean metaKeyArg, 
+                               short buttonArg, 
+                               EventTarget relatedTargetArg);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/events/MutationEvent.java b/debian/dom2-bindings/org/w3c/dom/events/MutationEvent.java
new file mode 100644
index 0000000..351f77b
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/events/MutationEvent.java
@@ -0,0 +1,108 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.events;
+
+import org.w3c.dom.Node;
+
+/**
+ * The <code>MutationEvent</code> interface provides specific contextual 
+ * information associated with Mutation events. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
+ * @since DOM Level 2
+ */
+public interface MutationEvent extends Event {
+    // attrChangeType
+    /**
+     * The <code>Attr</code> was modified in place.
+     */
+    public static final short MODIFICATION              = 1;
+    /**
+     * The <code>Attr</code> was just added.
+     */
+    public static final short ADDITION                  = 2;
+    /**
+     * The <code>Attr</code> was just removed.
+     */
+    public static final short REMOVAL                   = 3;
+
+    /**
+     *  <code>relatedNode</code> is used to identify a secondary node related 
+     * to a mutation event. For example, if a mutation event is dispatched 
+     * to a node indicating that its parent has changed, the 
+     * <code>relatedNode</code> is the changed parent. If an event is 
+     * instead dispatched to a subtree indicating a node was changed within 
+     * it, the <code>relatedNode</code> is the changed node. In the case of 
+     * the DOMAttrModified event it indicates the <code>Attr</code> node 
+     * which was modified, added, or removed. 
+     */
+    public Node getRelatedNode();
+
+    /**
+     *  <code>prevValue</code> indicates the previous value of the 
+     * <code>Attr</code> node in DOMAttrModified events, and of the 
+     * <code>CharacterData</code> node in DOMCharDataModified events. 
+     */
+    public String getPrevValue();
+
+    /**
+     *  <code>newValue</code> indicates the new value of the <code>Attr</code> 
+     * node in DOMAttrModified events, and of the <code>CharacterData</code> 
+     * node in DOMCharDataModified events. 
+     */
+    public String getNewValue();
+
+    /**
+     *  <code>attrName</code> indicates the name of the changed 
+     * <code>Attr</code> node in a DOMAttrModified event. 
+     */
+    public String getAttrName();
+
+    /**
+     *  <code>attrChange</code> indicates the type of change which triggered 
+     * the DOMAttrModified event. The values can be <code>MODIFICATION</code>
+     * , <code>ADDITION</code>, or <code>REMOVAL</code>. 
+     */
+    public short getAttrChange();
+
+    /**
+     * The <code>initMutationEvent</code> method is used to initialize the 
+     * value of a <code>MutationEvent</code> created through the 
+     * <code>DocumentEvent</code> interface. This method may only be called 
+     * before the <code>MutationEvent</code> has been dispatched via the 
+     * <code>dispatchEvent</code> method, though it may be called multiple 
+     * times during that phase if necessary. If called multiple times, the 
+     * final invocation takes precedence.
+     * @param typeArg Specifies the event type.
+     * @param canBubbleArg Specifies whether or not the event can bubble.
+     * @param cancelableArg Specifies whether or not the event's default 
+     *   action can be prevented.
+     * @param relatedNodeArg Specifies the <code>Event</code>'s related Node.
+     * @param prevValueArg Specifies the <code>Event</code>'s 
+     *   <code>prevValue</code> attribute. This value may be null.
+     * @param newValueArg Specifies the <code>Event</code>'s 
+     *   <code>newValue</code> attribute. This value may be null.
+     * @param attrNameArg Specifies the <code>Event</code>'s 
+     *   <code>attrName</code> attribute. This value may be null.
+     * @param attrChangeArg Specifies the <code>Event</code>'s 
+     *   <code>attrChange</code> attribute
+     */
+    public void initMutationEvent(String typeArg, 
+                                  boolean canBubbleArg, 
+                                  boolean cancelableArg, 
+                                  Node relatedNodeArg, 
+                                  String prevValueArg, 
+                                  String newValueArg, 
+                                  String attrNameArg, 
+                                  short attrChangeArg);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/events/UIEvent.java b/debian/dom2-bindings/org/w3c/dom/events/UIEvent.java
new file mode 100644
index 0000000..15affe8
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/events/UIEvent.java
@@ -0,0 +1,58 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.events;
+
+import org.w3c.dom.views.AbstractView;
+
+/**
+ * The <code>UIEvent</code> interface provides specific contextual information 
+ * associated with User Interface events.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
+ * @since DOM Level 2
+ */
+public interface UIEvent extends Event {
+    /**
+     * The <code>view</code> attribute identifies the <code>AbstractView</code>
+     *  from which the event was generated.
+     */
+    public AbstractView getView();
+
+    /**
+     * Specifies some detail information about the <code>Event</code>, 
+     * depending on the type of event.
+     */
+    public int getDetail();
+
+    /**
+     * The <code>initUIEvent</code> method is used to initialize the value of 
+     * a <code>UIEvent</code> created through the <code>DocumentEvent</code> 
+     * interface. This method may only be called before the 
+     * <code>UIEvent</code> has been dispatched via the 
+     * <code>dispatchEvent</code> method, though it may be called multiple 
+     * times during that phase if necessary. If called multiple times, the 
+     * final invocation takes precedence.
+     * @param typeArg Specifies the event type.
+     * @param canBubbleArg Specifies whether or not the event can bubble.
+     * @param cancelableArg Specifies whether or not the event's default 
+     *   action can be prevented.
+     * @param viewArg Specifies the <code>Event</code>'s 
+     *   <code>AbstractView</code>.
+     * @param detailArg Specifies the <code>Event</code>'s detail.
+     */
+    public void initUIEvent(String typeArg, 
+                            boolean canBubbleArg, 
+                            boolean cancelableArg, 
+                            AbstractView viewArg, 
+                            int detailArg);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLAnchorElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLAnchorElement.java
new file mode 100644
index 0000000..38fbf18
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLAnchorElement.java
@@ -0,0 +1,94 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The anchor element. See the A element definition in HTML 4.0.
+ */
+public interface HTMLAnchorElement extends HTMLElement {
+  /**
+   * A single character access key to give access to the form control. See the 
+   * accesskey attribute definition in HTML 4.0.
+   */
+  public String             getAccessKey();
+  public void               setAccessKey(String accessKey);
+  /**
+   * The character encoding of the linked resource. See the charset attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getCharset();
+  public void               setCharset(String charset);
+  /**
+   * Comma-separated list of lengths, defining an active region geometry.See 
+   * also <code>shape</code> for the shape of the region. See the coords 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getCoords();
+  public void               setCoords(String coords);
+  /**
+   * The URI of the linked resource. See the href attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getHref();
+  public void               setHref(String href);
+  /**
+   * Language code of the linked resource. See the hreflang attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getHreflang();
+  public void               setHreflang(String hreflang);
+  /**
+   * Anchor name. See the name attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Forward link type. See the rel attribute definition in HTML 4.0.
+   */
+  public String             getRel();
+  public void               setRel(String rel);
+  /**
+   * Reverse link type. See the rev attribute definition in HTML 4.0.
+   */
+  public String             getRev();
+  public void               setRev(String rev);
+  /**
+   * The shape of the active area. The coordinates are givenby 
+   * <code>coords</code>. See the shape attribute definition in HTML 4.0.
+   */
+  public String             getShape();
+  public void               setShape(String shape);
+  /**
+   * Index that represents the element's position in the tabbing order. See 
+   * the tabindex attribute definition in HTML 4.0.
+   */
+  public int                getTabIndex();
+  public void               setTabIndex(int tabIndex);
+  /**
+   * Frame to render the resource in. See the target attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getTarget();
+  public void               setTarget(String target);
+  /**
+   * Advisory content type. See the type attribute definition in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+  /**
+   * Removes keyboard focus from this element.
+   */
+  public void               blur();
+  /**
+   * Gives keyboard focus to this element.
+   */
+  public void               focus();
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLAppletElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLAppletElement.java
new file mode 100644
index 0000000..1a0867f
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLAppletElement.java
@@ -0,0 +1,88 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * An embedded Java applet. See the APPLET element definition in HTML 4.0. 
+ * This element is deprecated in HTML 4.0.
+ */
+public interface HTMLAppletElement extends HTMLElement {
+  /**
+   * Aligns this object (vertically or horizontally) with respect to its 
+   * surrounding text. See the align attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Alternate text for user agents not rendering the normal contentof this 
+   * element. See the alt attribute definition in HTML 4.0. This attribute is 
+   * deprecated in HTML 4.0.
+   */
+  public String             getAlt();
+  public void               setAlt(String alt);
+  /**
+   * Comma-separated archive list. See the archive attribute definition in 
+   * HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getArchive();
+  public void               setArchive(String archive);
+  /**
+   * Applet class file.  See the code attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getCode();
+  public void               setCode(String code);
+  /**
+   * Optional base URI for applet. See the codebase attribute definition in 
+   * HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getCodeBase();
+  public void               setCodeBase(String codeBase);
+  /**
+   * Override height. See the height attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getHeight();
+  public void               setHeight(String height);
+  /**
+   * Horizontal space to the left and right of this image, applet, or object. 
+   * See the hspace attribute definition in HTML 4.0. This attribute is 
+   * deprecated in HTML 4.0.
+   */
+  public String             getHspace();
+  public void               setHspace(String hspace);
+  /**
+   * The name of the applet. See the name attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Serialized applet file. See the object attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public String             getObject();
+  public void               setObject(String object);
+  /**
+   * Vertical space above and below this image, applet, or object. See the 
+   * vspace attribute definition in HTML 4.0. This attribute is deprecated in 
+   * HTML 4.0.
+   */
+  public String             getVspace();
+  public void               setVspace(String vspace);
+  /**
+   * Override width. See the width attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getWidth();
+  public void               setWidth(String width);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLAreaElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLAreaElement.java
new file mode 100644
index 0000000..e909b64
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLAreaElement.java
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Client-side image map area definition. See the AREA element definition in 
+ * HTML 4.0.
+ */
+public interface HTMLAreaElement extends HTMLElement {
+  /**
+   * A single character access key to give access to the form control. See the 
+   * accesskey attribute definition in HTML 4.0.
+   */
+  public String             getAccessKey();
+  public void               setAccessKey(String accessKey);
+  /**
+   * Alternate text for user agents not rendering the normal contentof this 
+   * element. See the alt attribute definition in HTML 4.0.
+   */
+  public String             getAlt();
+  public void               setAlt(String alt);
+  /**
+   * Comma-separated list of lengths, defining an active region geometry.See 
+   * also <code>shape</code> for the shape of the region. See the coords 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getCoords();
+  public void               setCoords(String coords);
+  /**
+   * The URI of the linked resource. See the href attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getHref();
+  public void               setHref(String href);
+  /**
+   * Specifies that this area is inactive, i.e., has no associated action. See 
+   * the nohref attribute definition in HTML 4.0.
+   */
+  public boolean            getNoHref();
+  public void               setNoHref(boolean noHref);
+  /**
+   * The shape of the active area. The coordinates are givenby 
+   * <code>coords</code>. See the shape attribute definition in HTML 4.0.
+   */
+  public String             getShape();
+  public void               setShape(String shape);
+  /**
+   * Index that represents the element's position in the tabbing order. See 
+   * the tabindex attribute definition in HTML 4.0.
+   */
+  public int                getTabIndex();
+  public void               setTabIndex(int tabIndex);
+  /**
+   * Frame to render the resource in. See the target attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getTarget();
+  public void               setTarget(String target);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLBRElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLBRElement.java
new file mode 100644
index 0000000..a1c4af5
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLBRElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Force a line break. See the BR element definition in HTML 4.0.
+ */
+public interface HTMLBRElement extends HTMLElement {
+  /**
+   * Control flow of text around floats. See the clear attribute definition in 
+   * HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getClear();
+  public void               setClear(String clear);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLBaseElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLBaseElement.java
new file mode 100644
index 0000000..3b4fada
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLBaseElement.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Document base URI. See the BASE element definition in HTML 4.0.
+ */
+public interface HTMLBaseElement extends HTMLElement {
+  /**
+   * The base URI See the href attribute definition in HTML 4.0.
+   */
+  public String             getHref();
+  public void               setHref(String href);
+  /**
+   * The default target frame. See the target attribute definition in HTML 4.0.
+   */
+  public String             getTarget();
+  public void               setTarget(String target);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLBaseFontElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLBaseFontElement.java
new file mode 100644
index 0000000..71bfd92
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLBaseFontElement.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Base font. See the BASEFONT element definition in HTML 4.0. This element is 
+ * deprecated in HTML 4.0.
+ */
+public interface HTMLBaseFontElement extends HTMLElement {
+  /**
+   * Font color. See the color attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getColor();
+  public void               setColor(String color);
+  /**
+   * Font face identifier. See the face attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getFace();
+  public void               setFace(String face);
+  /**
+   * Font size. See the size attribute definition in HTML 4.0. This attribute 
+   * is deprecated in HTML 4.0.
+   */
+  public String             getSize();
+  public void               setSize(String size);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLBodyElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLBodyElement.java
new file mode 100644
index 0000000..ddcd587
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLBodyElement.java
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The HTML document body. This element is always present in the DOM API,even 
+ * if the tags are not present in the source document. See the BODY element 
+ * definition in HTML 4.0.
+ */
+public interface HTMLBodyElement extends HTMLElement {
+  /**
+   * Color of active links (after mouse-button down, but beforemouse-button 
+   * up). See the alink attribute definition in HTML 4.0. This attribute is 
+   * deprecated in HTML 4.0.
+   */
+  public String             getALink();
+  public void               setALink(String aLink);
+  /**
+   * URI of the background texture tile image. See the background attribute 
+   * definition in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getBackground();
+  public void               setBackground(String background);
+  /**
+   * Document background color. See the bgcolor attribute definition in HTML 
+   * 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getBgColor();
+  public void               setBgColor(String bgColor);
+  /**
+   * Color of links that are not active and unvisited. See the link attribute 
+   * definition in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getLink();
+  public void               setLink(String link);
+  /**
+   * Document text color. See the text attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getText();
+  public void               setText(String text);
+  /**
+   * Color of links that have been visited by the user. See the vlink 
+   * attribute definition in HTML 4.0. This attribute is deprecated in HTML 
+   * 4.0.
+   */
+  public String             getVLink();
+  public void               setVLink(String vLink);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLButtonElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLButtonElement.java
new file mode 100644
index 0000000..79aac0d
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLButtonElement.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Push button. See the BUTTON element definition in HTML 4.0.
+ */
+public interface HTMLButtonElement extends HTMLElement {
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * A single character access key to give access to the form control. See the 
+   * accesskey attribute definition in HTML 4.0.
+   */
+  public String             getAccessKey();
+  public void               setAccessKey(String accessKey);
+  /**
+   * The control is unavailable in this context. See the disabled attribute 
+   * definition in HTML 4.0.
+   */
+  public boolean            getDisabled();
+  public void               setDisabled(boolean disabled);
+  /**
+   * Form control or object name when submitted with a form. See the name 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Index that represents the element's position in the tabbing order. See 
+   * the tabindex attribute definition in HTML 4.0.
+   */
+  public int                getTabIndex();
+  public void               setTabIndex(int tabIndex);
+  /**
+   * The type of button. See the type attribute definition in HTML 4.0.
+   */
+  public String             getType();
+  /**
+   * The current form control value. See the value attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getValue();
+  public void               setValue(String value);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLCollection.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLCollection.java
new file mode 100644
index 0000000..ccfba41
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLCollection.java
@@ -0,0 +1,46 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * An <code>HTMLCollection</code> is a list of nodes. An individual nodemay be 
+ * accessed by either ordinal index or the node's<code>name</code> or 
+ * <code>id</code> attributes. Note:Collections in the HTML DOM are assumed 
+ * to be live meaningthat they are automatically updated when the underlying 
+ * document ischanged. 
+ */
+public interface HTMLCollection {
+  /**
+   * This attribute specifies the length or size of the list. 
+   */
+  public int                getLength();
+  /**
+   * This method retrieves a node specified by ordinal index. Nodes are 
+   * numbered in tree order (depth-first traversal order).
+   * @param index The index of the node to be fetched. The index origin is 0.
+   * @return The <code>Node</code> at the corresponding position upon success. 
+   *   A value of <code>null</code> is returned if the index is out of range. 
+   */
+  public Node               item(int index);
+  /**
+   * This method retrieves a <code>Node</code> using a name. It first searches 
+   * for a <code>Node</code> with a matching <code>id</code> attribute. If it 
+   * doesn't find one, it then searches for a <code>Node</code> with a 
+   * matching <code>name</code> attribute, but only on those elements that 
+   * are allowed a name attribute. 
+   * @param name The name of the <code>Node</code> to be fetched.
+   * @return The <code>Node</code> with a <code>name</code> or <code>id</code> 
+   *   attribute whose value corresponds to the specified string. Upon 
+   *   failure (e.g., no node with this name exists), returns 
+   *   <code>null</code>.
+   */
+  public Node               namedItem(String name);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLDListElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLDListElement.java
new file mode 100644
index 0000000..8db6dc6
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLDListElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Definition list. See the DL element definition in HTML 4.0.
+ */
+public interface HTMLDListElement extends HTMLElement {
+  /**
+   * Reduce spacing between list items. See the compact attribute definition 
+   * in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public boolean            getCompact();
+  public void               setCompact(boolean compact);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLDirectoryElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLDirectoryElement.java
new file mode 100644
index 0000000..47a4ad9
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLDirectoryElement.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Directory list. See the DIR element definition in HTML 4.0. This element is 
+ * deprecated in HTML 4.0.
+ */
+public interface HTMLDirectoryElement extends HTMLElement {
+  /**
+   * Reduce spacing between list items. See the compact attribute definition 
+   * in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public boolean            getCompact();
+  public void               setCompact(boolean compact);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLDivElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLDivElement.java
new file mode 100644
index 0000000..c7285ae
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLDivElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Generic block container. See the DIV element definition in HTML 4.0.
+ */
+public interface HTMLDivElement extends HTMLElement {
+  /**
+   * Horizontal text alignment. See the align attribute definition in HTML 
+   * 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLDocument.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLDocument.java
new file mode 100644
index 0000000..9e58eeb
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLDocument.java
@@ -0,0 +1,135 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * An <code>HTMLDocument</code> is the root of the HTML hierarchy andholds the 
+ * entire content. Beside providing access to the hierarchy, italso provides 
+ * some convenience methods for accessing certain sets ofinformation from the 
+ * document.
+ * <p>The following properties have been deprecated in favor of the
+ * corresponding ones for the BODY element:alinkColorbackgroundbgColorfgColor
+ * linkColorvlinkColor
+ *  
+ */
+public interface HTMLDocument extends Document {
+  /**
+   * The title of a document as specified by the <code>TITLE</code>element in 
+   * the head of the document. 
+   */
+  public String             getTitle();
+  public void               setTitle(String title);
+  /**
+   * Returns the URI of the page that linked to this page. The value isan 
+   * empty string if the user navigated to the page directly (notthrough a 
+   * link, but, for example, via a bookmark). 
+   */
+  public String             getReferrer();
+  /**
+   * The domain name of the server that served the document, or a nullstring 
+   * if the server cannot be identified by a domain name. 
+   */
+  public String             getDomain();
+  /**
+   * The complete URI of the document. 
+   */
+  public String             getURL();
+  /**
+   * The element that contains the content for the document. In documentswith 
+   * <code>BODY</code> contents, returns the <code>BODY</code>element, and in 
+   * frameset documents, this returns the outermost<code>FRAMESET</code> 
+   * element. 
+   */
+  public HTMLElement        getBody();
+  public void               setBody(HTMLElement body);
+  /**
+   * A collection of all the <code>IMG</code> elements in a document.The 
+   * behavior is limited to <code>IMG</code> elements forbackwards 
+   * compatibility. 
+   */
+  public HTMLCollection     getImages();
+  /**
+   * A collection of all the <code>OBJECT</code> elements that includeapplets 
+   * and <code>APPLET</code> (deprecated) elements ina document. 
+   */
+  public HTMLCollection     getApplets();
+  /**
+   * A collection of all <code>AREA</code> elements andanchor (<code>A</code>) 
+   * elements in a documentwith a value for the <code>href</code> attribute. 
+   */
+  public HTMLCollection     getLinks();
+  /**
+   * A collection of all the forms of a document. 
+   */
+  public HTMLCollection     getForms();
+  /**
+   * A collection of all the anchor (<code>A</code>) elements in a document
+   * with a value for the <code>name</code> attribute.Note. For reasons of 
+   * backwardscompatibility, the returned set of anchors only contains those 
+   * anchors created with the <code>name</code> attribute, not those created 
+   * with the <code>id</code> attribute. 
+   */
+  public HTMLCollection     getAnchors();
+  /**
+   * The cookies associated with this document. If there are none, thevalue is 
+   * an empty string. Otherwise, the value is a string: asemicolon-delimited 
+   * list of "name, value" pairs for all the cookiesassociated with the page. 
+   * For example, <code>name=value;expires=date</code>. 
+   */
+  public String             getCookie();
+  public void               setCookie(String cookie);
+  /**
+   * Note.This method and the ones following allow a user to add to or replace 
+   * the structuremodel of a document using strings of unparsed HTML. At the 
+   * time of writing alternate methods for providing similar functionality 
+   * for both HTML and XML documents were being considered. The following 
+   * methodsmay be deprecated at some point in the future in favor of a more
+   * general-purpose mechanism.
+   * <br>Open a document stream for writing. If a document exists in the
+   * target, this method clears it.
+   */
+  public void               open();
+  /**
+   * Closes a document stream opened by <code>open()</code>and forces 
+   * rendering.
+   */
+  public void               close();
+  /**
+   * Write a string of text to a document stream opened by<code>open()</code>. 
+   * The text is parsed into the document's structuremodel.
+   * @param text The string to be parsed into some structure in the document 
+   *   structuremodel.
+   */
+  public void               write(String text);
+  /**
+   * Write a string of text followed by a newline character to a document
+   * stream opened by <code>open()</code>. The text is parsed into the
+   * document's structure model.
+   * @param text The string to be parsed into some structure in the document 
+   *   structuremodel.
+   */
+  public void               writeln(String text);
+  /**
+   * Returns the Element whose <code>id</code> is given by elementId. If no 
+   * such element exists, returns <code>null</code>. Behavior is not defined 
+   * if more than one element has this <code>id</code>. 
+   * @param elementId The unique <code>id</code> value for an element.
+   * @return The matching element.
+   */
+  public Element            getElementById(String elementId);
+  /**
+   * Returns the (possibly empty) collection of elements whose<code>name</code>
+   *  value is given by <code>elementName</code>.
+   * @param elementName The <code>name</code> attribute value for an element.
+   * @return The matching elements.
+   */
+  public NodeList           getElementsByName(String elementName);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLElement.java
new file mode 100644
index 0000000..8d0c291
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLElement.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * All HTML element interfaces derive from this class. Elements that only 
+ * exposethe HTML core attributes are represented by the base
+ * <code>HTMLElement</code> interface. These elements are as follows:HEAD
+ * special: SUB, SUP, SPAN, BDOfont: TT, I, B, U, S, STRIKE, BIG, SMALL
+ * phrase: EM, STRONG, DFN, CODE, SAMP, KBD, VAR, CITE, ACRONYM, ABBRlist: 
+ * DD, DTNOFRAMES, NOSCRIPTADDRESS, CENTER
+ * Note. The <code>style</code> attribute for thisinterface is reserved for 
+ * future usage. 
+ */
+public interface HTMLElement extends Element {
+  /**
+   * The element's identifier. See the id attribute definition in HTML 4.0.
+   */
+  public String             getId();
+  public void               setId(String id);
+  /**
+   * The element's advisory title. See the title attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getTitle();
+  public void               setTitle(String title);
+  /**
+   * Language code defined in RFC 1766. See the lang attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getLang();
+  public void               setLang(String lang);
+  /**
+   * Specifies the base direction of directionally neutraltext and the 
+   * directionality of tables. See the dir attribute definition in HTML 4.0.
+   */
+  public String             getDir();
+  public void               setDir(String dir);
+  /**
+   * The class attribute of the element. This attribute has been renameddue to 
+   * conflicts with the "class" keyword exposed by many languages. See the 
+   * class attribute definition in HTML 4.0.
+   */
+  public String             getClassName();
+  public void               setClassName(String className);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLFieldSetElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLFieldSetElement.java
new file mode 100644
index 0000000..2542194
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLFieldSetElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Organizes form controls into logical groups. See the  FIELDSET  element 
+ * definition in HTML 4.0.
+ */
+public interface HTMLFieldSetElement extends HTMLElement {
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLFontElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLFontElement.java
new file mode 100644
index 0000000..a7cb0a3
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLFontElement.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Local change to font. See the FONT element definition in HTML 4.0. This 
+ * element is deprecated in HTML 4.0.
+ */
+public interface HTMLFontElement extends HTMLElement {
+  /**
+   * Font color. See the color attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getColor();
+  public void               setColor(String color);
+  /**
+   * Font face identifier. See the face attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getFace();
+  public void               setFace(String face);
+  /**
+   * Font size. See the size attribute definition in HTML 4.0. This attribute 
+   * is deprecated in HTML 4.0.
+   */
+  public String             getSize();
+  public void               setSize(String size);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLFormElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLFormElement.java
new file mode 100644
index 0000000..e2ef99d
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLFormElement.java
@@ -0,0 +1,72 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The <code>FORM</code> element encompasses behavior similar to acollection 
+ * and an element. It provides direct access to the containedinput elements 
+ * as well as the attributes of the form element. See the FORM element 
+ * definition in HTML 4.0.
+ */
+public interface HTMLFormElement extends HTMLElement {
+  /**
+   * Returns a collection of all control elements in the form. 
+   */
+  public HTMLCollection     getElements();
+  /**
+   * The number of form controls in the form.
+   */
+  public int                getLength();
+  /**
+   * Names the form. 
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * List of character sets supported by the server. See the accept-charset 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getAcceptCharset();
+  public void               setAcceptCharset(String acceptCharset);
+  /**
+   * Server-side form handler. See the action attribute definition in HTML 4.0.
+   */
+  public String             getAction();
+  public void               setAction(String action);
+  /**
+   * The content type of the submitted form, generally 
+   * "application/x-www-form-urlencoded".  See the enctype attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getEnctype();
+  public void               setEnctype(String enctype);
+  /**
+   * HTTP method used to submit form. See the method attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getMethod();
+  public void               setMethod(String method);
+  /**
+   * Frame to render the resource in. See the target attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getTarget();
+  public void               setTarget(String target);
+  /**
+   * Submits the form. It performs the same action as a  submit button.
+   */
+  public void               submit();
+  /**
+   * Restores a form element's default values. It performs  the same action as 
+   * a reset button.
+   */
+  public void               reset();
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLFrameElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLFrameElement.java
new file mode 100644
index 0000000..c0fce30
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLFrameElement.java
@@ -0,0 +1,65 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Create a frame. See the FRAME element definition in HTML 4.0.
+ */
+public interface HTMLFrameElement extends HTMLElement {
+  /**
+   * Request frame borders. See the frameborder attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getFrameBorder();
+  public void               setFrameBorder(String frameBorder);
+  /**
+   * URI designating a long description of this image or frame. See the 
+   * longdesc attribute definition in HTML 4.0.
+   */
+  public String             getLongDesc();
+  public void               setLongDesc(String longDesc);
+  /**
+   * Frame margin height, in pixels. See the marginheight attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getMarginHeight();
+  public void               setMarginHeight(String marginHeight);
+  /**
+   * Frame margin width, in pixels. See the marginwidth attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getMarginWidth();
+  public void               setMarginWidth(String marginWidth);
+  /**
+   * The frame name (object of the <code>target</code> attribute). See the 
+   * name attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * When true, forbid user from resizing frame. See the noresize attribute 
+   * definition in HTML 4.0.
+   */
+  public boolean            getNoResize();
+  public void               setNoResize(boolean noResize);
+  /**
+   * Specify whether or not the frame should have scrollbars. See the 
+   * scrolling attribute definition in HTML 4.0.
+   */
+  public String             getScrolling();
+  public void               setScrolling(String scrolling);
+  /**
+   * A URI designating the initial frame contents. See the src attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getSrc();
+  public void               setSrc(String src);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLFrameSetElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLFrameSetElement.java
new file mode 100644
index 0000000..6a018df
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLFrameSetElement.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Create a grid of frames. See the FRAMESET element definition in HTML 4.0.
+ */
+public interface HTMLFrameSetElement extends HTMLElement {
+  /**
+   * The number of columns of frames in the frameset. See the cols attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getCols();
+  public void               setCols(String cols);
+  /**
+   * The number of rows of frames in the frameset. See the rows attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getRows();
+  public void               setRows(String rows);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLHRElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLHRElement.java
new file mode 100644
index 0000000..55fab87
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLHRElement.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Create a horizontal rule. See the HR element definition in HTML 4.0.
+ */
+public interface HTMLHRElement extends HTMLElement {
+  /**
+   * Align the rule on the page. See the align attribute definition in HTML 
+   * 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Indicates to the user agent that there should be no shading in the
+   * rendering of this element. See the noshade attribute definition in HTML 
+   * 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public boolean            getNoShade();
+  public void               setNoShade(boolean noShade);
+  /**
+   * The height of the rule. See the size attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public String             getSize();
+  public void               setSize(String size);
+  /**
+   * The width of the rule. See the width attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public String             getWidth();
+  public void               setWidth(String width);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLHeadElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLHeadElement.java
new file mode 100644
index 0000000..10ee176
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLHeadElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Document head information. See the HEAD element definition in HTML 4.0.
+ */
+public interface HTMLHeadElement extends HTMLElement {
+  /**
+   * URI designating a metadata profile. See the profile attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getProfile();
+  public void               setProfile(String profile);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLHeadingElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLHeadingElement.java
new file mode 100644
index 0000000..e63e223
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLHeadingElement.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * For the <code>H1</code> to <code>H6</code> elements. See the H1 element 
+ * definition in HTML 4.0.
+ */
+public interface HTMLHeadingElement extends HTMLElement {
+  /**
+   * Horizontal text alignment. See the align attribute definition in HTML 
+   * 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLHtmlElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLHtmlElement.java
new file mode 100644
index 0000000..ec0efb5
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLHtmlElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Root of an HTML document. See the HTML element definition in HTML 4.0.
+ */
+public interface HTMLHtmlElement extends HTMLElement {
+  /**
+   * Version information about the document's DTD. See the version attribute 
+   * definition in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getVersion();
+  public void               setVersion(String version);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLIFrameElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLIFrameElement.java
new file mode 100644
index 0000000..34299e9
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLIFrameElement.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Inline subwindows. See the IFRAME element definition in HTML 4.0.
+ */
+public interface HTMLIFrameElement extends HTMLElement {
+  /**
+   * Aligns this object (vertically or horizontally) with respect to its 
+   * surrounding text. See the align attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Request frame borders. See the frameborder attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getFrameBorder();
+  public void               setFrameBorder(String frameBorder);
+  /**
+   * Frame height. See the height attribute definition in HTML 4.0.
+   */
+  public String             getHeight();
+  public void               setHeight(String height);
+  /**
+   * URI designating a long description of this image or frame. See the 
+   * longdesc attribute definition in HTML 4.0.
+   */
+  public String             getLongDesc();
+  public void               setLongDesc(String longDesc);
+  /**
+   * Frame margin height, in pixels. See the marginheight attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getMarginHeight();
+  public void               setMarginHeight(String marginHeight);
+  /**
+   * Frame margin width, in pixels. See the marginwidth attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getMarginWidth();
+  public void               setMarginWidth(String marginWidth);
+  /**
+   * The frame name (object of the <code>target</code> attribute). See the 
+   * name attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Specify whether or not the frame should have scrollbars. See the 
+   * scrolling attribute definition in HTML 4.0.
+   */
+  public String             getScrolling();
+  public void               setScrolling(String scrolling);
+  /**
+   * A URI designating the initial frame contents. See the src attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getSrc();
+  public void               setSrc(String src);
+  /**
+   * Frame width. See the width attribute definition in HTML 4.0.
+   */
+  public String             getWidth();
+  public void               setWidth(String width);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLImageElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLImageElement.java
new file mode 100644
index 0000000..c09735f
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLImageElement.java
@@ -0,0 +1,92 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Embedded image. See the IMG element definition in HTML 4.0.
+ */
+public interface HTMLImageElement extends HTMLElement {
+  /**
+   * URI designating the source of this image, for low-resolution output. 
+   */
+  public String             getLowSrc();
+  public void               setLowSrc(String lowSrc);
+  /**
+   * The name of the element (for backwards compatibility). 
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Aligns this object (vertically or horizontally) with respect to its 
+   * surrounding text. See the align attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Alternate text for user agents not rendering the normal contentof this 
+   * element. See the alt attribute definition in HTML 4.0.
+   */
+  public String             getAlt();
+  public void               setAlt(String alt);
+  /**
+   * Width of border around image. See the border attribute definition in HTML 
+   * 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getBorder();
+  public void               setBorder(String border);
+  /**
+   * Override height. See the height attribute definition in HTML 4.0.
+   */
+  public String             getHeight();
+  public void               setHeight(String height);
+  /**
+   * Horizontal space to the left and right of this image. See the hspace 
+   * attribute definition in HTML 4.0. This attribute is deprecated in HTML 
+   * 4.0.
+   */
+  public String             getHspace();
+  public void               setHspace(String hspace);
+  /**
+   * Use server-side image map. See the ismap attribute definition in HTML 4.0.
+   */
+  public boolean            getIsMap();
+  public void               setIsMap(boolean isMap);
+  /**
+   * URI designating a long description of this image or frame. See the 
+   * longdesc attribute definition in HTML 4.0.
+   */
+  public String             getLongDesc();
+  public void               setLongDesc(String longDesc);
+  /**
+   * URI designating the source of this image. See the src attribute definition
+   *  in HTML 4.0.
+   */
+  public String             getSrc();
+  public void               setSrc(String src);
+  /**
+   * Use client-side image map. See the usemap attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getUseMap();
+  public void               setUseMap(String useMap);
+  /**
+   * Vertical space above and below this image. See the vspace attribute 
+   * definition in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getVspace();
+  public void               setVspace(String vspace);
+  /**
+   * Override width. See the width attribute definition in HTML 4.0.
+   */
+  public String             getWidth();
+  public void               setWidth(String width);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLInputElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLInputElement.java
new file mode 100644
index 0000000..a7be659
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLInputElement.java
@@ -0,0 +1,151 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Form control. Note. Depending upon the environmentthe page is being viewed, 
+ * the value property may be read-only for thefile upload input type. For the 
+ * "password" input type, the actual valuereturned may be masked to prevent 
+ * unauthorized use. See the INPUT element definition in HTML 4.0.
+ */
+public interface HTMLInputElement extends HTMLElement {
+  /**
+   * Stores the initial control value (i.e., the initial value of
+   * <code>value</code>). 
+   */
+  public String             getDefaultValue();
+  public void               setDefaultValue(String defaultValue);
+  /**
+   * When <code>type</code> has the value "Radio" or "Checkbox", stores the 
+   * initial value of the <code>checked</code> attribute. 
+   */
+  public boolean            getDefaultChecked();
+  public void               setDefaultChecked(boolean defaultChecked);
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * A comma-separated list of content types that a server processing thisform 
+   * will handle correctly. See the accept attribute definition in HTML 4.0.
+   */
+  public String             getAccept();
+  public void               setAccept(String accept);
+  /**
+   * A single character access key to give access to the form control. See the 
+   * accesskey attribute definition in HTML 4.0.
+   */
+  public String             getAccessKey();
+  public void               setAccessKey(String accessKey);
+  /**
+   * Aligns this object (vertically or horizontally) with respect to its 
+   * surrounding text. See the align attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Alternate text for user agents not rendering the normal contentof this 
+   * element. See the alt attribute definition in HTML 4.0.
+   */
+  public String             getAlt();
+  public void               setAlt(String alt);
+  /**
+   * Describes whether a radio or check box is checked, when<code>type</code> 
+   * has the value "Radio" or "Checkbox".  The value isTRUE if explicitly 
+   * set. Represents the current state of the checkboxor radio button. See 
+   * the checked attribute definition in HTML 4.0.
+   */
+  public boolean            getChecked();
+  public void               setChecked(boolean checked);
+  /**
+   * The control is unavailable in this context. See the disabled attribute 
+   * definition in HTML 4.0.
+   */
+  public boolean            getDisabled();
+  public void               setDisabled(boolean disabled);
+  /**
+   * Maximum number of characters for text fields, when <code>type</code>has 
+   * the value "Text" or "Password". See the maxlength attribute definition 
+   * in HTML 4.0.
+   */
+  public int                getMaxLength();
+  public void               setMaxLength(int maxLength);
+  /**
+   * Form control or object name when submitted with a form. See the name 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * This control is read-only. When <code>type</code> has the value "text"or 
+   * "password" only. See the readonly attribute definition in HTML 4.0.
+   */
+  public boolean            getReadOnly();
+  public void               setReadOnly(boolean readOnly);
+  /**
+   * Size information. The precise meaning is specific to each type offield.  
+   * See the size attribute definition in HTML 4.0.
+   */
+  public String             getSize();
+  public void               setSize(String size);
+  /**
+   * When the <code>type</code> attribute has the value "Image", thisattribute 
+   * specifies the location of the image to be used to decoratethe graphical 
+   * submit button. See the src attribute definition in HTML 4.0.
+   */
+  public String             getSrc();
+  public void               setSrc(String src);
+  /**
+   * Index that represents the element's position in the tabbing order. See 
+   * the tabindex attribute definition in HTML 4.0.
+   */
+  public int                getTabIndex();
+  public void               setTabIndex(int tabIndex);
+  /**
+   * The type of control created. See the type attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getType();
+  /**
+   * Use client-side image map. See the usemap attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getUseMap();
+  public void               setUseMap(String useMap);
+  /**
+   * The current form control value. Used for radio buttons and check boxes. 
+   * See the value attribute definition in HTML 4.0.
+   */
+  public String             getValue();
+  public void               setValue(String value);
+  /**
+   * Removes keyboard focus from this element.
+   */
+  public void               blur();
+  /**
+   * Gives keyboard focus to this element.
+   */
+  public void               focus();
+  /**
+   * Select the contents of the text area. For <code>INPUT</code> elements
+   * whose <code>type</code> attribute has one of the following values:
+   * "Text", "File", or "Password".
+   */
+  public void               select();
+  /**
+   * Simulate a mouse-click. For <code>INPUT</code> elements whose
+   * <code>type</code> attribute has one of the followingvalues: "Button", 
+   * "Checkbox", "Radio", "Reset", or "Submit".
+   */
+  public void               click();
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLIsIndexElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLIsIndexElement.java
new file mode 100644
index 0000000..676ccfd
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLIsIndexElement.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * This element is usedfor single-line text input. See the ISINDEX element 
+ * definition in HTML 4.0. This element is deprecated in HTML 4.0.
+ */
+public interface HTMLIsIndexElement extends HTMLElement {
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * The prompt message. See the prompt attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getPrompt();
+  public void               setPrompt(String prompt);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLLIElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLLIElement.java
new file mode 100644
index 0000000..0f1a4f7
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLLIElement.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * List item. See the LI element definition in HTML 4.0.
+ */
+public interface HTMLLIElement extends HTMLElement {
+  /**
+   * List item bullet style. See the type attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+  /**
+   * Reset sequence number when used in <code>OL</code> See the value 
+   * attribute definition in HTML 4.0. This attribute is deprecated in HTML 
+   * 4.0.
+   */
+  public int                getValue();
+  public void               setValue(int value);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLLabelElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLLabelElement.java
new file mode 100644
index 0000000..856d657
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLLabelElement.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Form field label text. See the LABEL element definition in HTML 4.0.
+ */
+public interface HTMLLabelElement extends HTMLElement {
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * A single character access key to give access to the form control. See the 
+   * accesskey attribute definition in HTML 4.0.
+   */
+  public String             getAccessKey();
+  public void               setAccessKey(String accessKey);
+  /**
+   * This attribute links this label with another form controlby 
+   * <code>id</code> attribute. See the for attribute definition in HTML 4.0.
+   */
+  public String             getHtmlFor();
+  public void               setHtmlFor(String htmlFor);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLLegendElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLLegendElement.java
new file mode 100644
index 0000000..5727b00
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLLegendElement.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Provides a caption for a <code>FIELDSET</code> grouping.  See the LEGEND 
+ * element definition in HTML 4.0.
+ */
+public interface HTMLLegendElement extends HTMLElement {
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * A single character access key to give access to the form control. See the 
+   * accesskey attribute definition in HTML 4.0.
+   */
+  public String             getAccessKey();
+  public void               setAccessKey(String accessKey);
+  /**
+   * Text alignment relative to <code>FIELDSET</code>. See the align attribute 
+   * definition in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLLinkElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLLinkElement.java
new file mode 100644
index 0000000..17039b7
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLLinkElement.java
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The <code>LINK</code> element specifies a link to an externalresource, and 
+ * defines this document's relationship to that resource(or vice versa).  See 
+ * the LINK element definition in HTML 4.0.
+ */
+public interface HTMLLinkElement extends HTMLElement {
+  /**
+   * Enables/disables the link. This is currently only used for style sheet
+   * links, and may be used to activate or deactivate style sheets. 
+   */
+  public boolean            getDisabled();
+  public void               setDisabled(boolean disabled);
+  /**
+   * The character encoding of the resource being linked to. See the charset 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getCharset();
+  public void               setCharset(String charset);
+  /**
+   * The URI of the linked resource. See the href attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getHref();
+  public void               setHref(String href);
+  /**
+   * Language code of the linked resource. See the hreflang attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getHreflang();
+  public void               setHreflang(String hreflang);
+  /**
+   * Designed for use with one or more target media. See the media attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getMedia();
+  public void               setMedia(String media);
+  /**
+   * Forward link type. See the rel attribute definition in HTML 4.0.
+   */
+  public String             getRel();
+  public void               setRel(String rel);
+  /**
+   * Reverse link type. See the rev attribute definition in HTML 4.0.
+   */
+  public String             getRev();
+  public void               setRev(String rev);
+  /**
+   * Frame to render the resource in. See the target attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getTarget();
+  public void               setTarget(String target);
+  /**
+   * Advisory content type. See the type attribute definition in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLMapElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLMapElement.java
new file mode 100644
index 0000000..c06c74c
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLMapElement.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Client-side image map. See the MAP element definition in HTML 4.0.
+ */
+public interface HTMLMapElement extends HTMLElement {
+  /**
+   * The list of areas defined for the image map. 
+   */
+  public HTMLCollection     getAreas();
+  /**
+   * Names the map (for use with <code>usemap</code>). See the name attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLMenuElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLMenuElement.java
new file mode 100644
index 0000000..e2d1ff3
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLMenuElement.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Menu list. See the MENU element definition in HTML 4.0. This element is 
+ * deprecated in HTML 4.0.
+ */
+public interface HTMLMenuElement extends HTMLElement {
+  /**
+   * Reduce spacing between list items. See the compact attribute definition 
+   * in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public boolean            getCompact();
+  public void               setCompact(boolean compact);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLMetaElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLMetaElement.java
new file mode 100644
index 0000000..5fc4fa5
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLMetaElement.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * This contains generic meta-information about the document. See the META 
+ * element definition in HTML 4.0.
+ */
+public interface HTMLMetaElement extends HTMLElement {
+  /**
+   * Associated information. See the content attribute definition in HTML 4.0.
+   */
+  public String             getContent();
+  public void               setContent(String content);
+  /**
+   * HTTP response header name. See the http-equiv attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getHttpEquiv();
+  public void               setHttpEquiv(String httpEquiv);
+  /**
+   * Meta information name. See the name attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Select form of content. See the scheme attribute definition in HTML 4.0.
+   */
+  public String             getScheme();
+  public void               setScheme(String scheme);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLModElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLModElement.java
new file mode 100644
index 0000000..befc8ee
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLModElement.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Notice of modification to part of a document. See the  INS  and DEL  
+ * element definitions in HTML 4.0. 
+ */
+public interface HTMLModElement extends HTMLElement {
+  /**
+   * A URI designating a document that describes the reason forthe change. See 
+   * the cite attribute definition in HTML 4.0.
+   */
+  public String             getCite();
+  public void               setCite(String cite);
+  /**
+   * The date and time of the change. See the datetime attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getDateTime();
+  public void               setDateTime(String dateTime);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLOListElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLOListElement.java
new file mode 100644
index 0000000..35a27ee
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLOListElement.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Ordered list. See the OL element definition in HTML 4.0.
+ */
+public interface HTMLOListElement extends HTMLElement {
+  /**
+   * Reduce spacing between list items. See the compact attribute definition 
+   * in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public boolean            getCompact();
+  public void               setCompact(boolean compact);
+  /**
+   * Starting sequence number. See the start attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public int                getStart();
+  public void               setStart(int start);
+  /**
+   * Numbering style. See the type attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLObjectElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLObjectElement.java
new file mode 100644
index 0000000..ed2db9b
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLObjectElement.java
@@ -0,0 +1,129 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Generic embedded object. Note. In principle, allproperties on the object 
+ * element are read-write but in someenvironments some properties may be 
+ * read-only once the underlyingobject is instantiated. See the OBJECT 
+ * element definition in HTML 4.0.
+ */
+public interface HTMLObjectElement extends HTMLElement {
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * Applet class file. See the <code>code</code> attribute for
+   * HTMLAppletElement. 
+   */
+  public String             getCode();
+  public void               setCode(String code);
+  /**
+   * Aligns this object (vertically or horizontally) with respect to its 
+   * surrounding text. See the align attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Space-separated list of archives. See the archive attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getArchive();
+  public void               setArchive(String archive);
+  /**
+   * Width of border around the object. See the border attribute definition in 
+   * HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getBorder();
+  public void               setBorder(String border);
+  /**
+   * Base URI for <code>classid</code>, <code>data</code>, and
+   * <code>archive</code> attributes. See the codebase attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getCodeBase();
+  public void               setCodeBase(String codeBase);
+  /**
+   * Content type for data downloaded via <code>classid</code> attribute. See 
+   * the codetype attribute definition in HTML 4.0.
+   */
+  public String             getCodeType();
+  public void               setCodeType(String codeType);
+  /**
+   * A URI specifying the location of the object's data.  See the data 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getData();
+  public void               setData(String data);
+  /**
+   * Declare (for future reference), but do not instantiate, thisobject. See 
+   * the declare attribute definition in HTML 4.0.
+   */
+  public boolean            getDeclare();
+  public void               setDeclare(boolean declare);
+  /**
+   * Override height. See the height attribute definition in HTML 4.0.
+   */
+  public String             getHeight();
+  public void               setHeight(String height);
+  /**
+   * Horizontal space to the left and right of this image, applet, or object. 
+   * See the hspace attribute definition in HTML 4.0. This attribute is 
+   * deprecated in HTML 4.0.
+   */
+  public String             getHspace();
+  public void               setHspace(String hspace);
+  /**
+   * Form control or object name when submitted with a form. See the name 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Message to render while loading the object. See the standby attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getStandby();
+  public void               setStandby(String standby);
+  /**
+   * Index that represents the element's position in the tabbing order. See 
+   * the tabindex attribute definition in HTML 4.0.
+   */
+  public int                getTabIndex();
+  public void               setTabIndex(int tabIndex);
+  /**
+   * Content type for data downloaded via <code>data</code> attribute. See the 
+   * type attribute definition in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+  /**
+   * Use client-side image map. See the usemap attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getUseMap();
+  public void               setUseMap(String useMap);
+  /**
+   * Vertical space above and below this image, applet, or object. See the 
+   * vspace attribute definition in HTML 4.0. This attribute is deprecated in 
+   * HTML 4.0.
+   */
+  public String             getVspace();
+  public void               setVspace(String vspace);
+  /**
+   * Override width. See the width attribute definition in HTML 4.0.
+   */
+  public String             getWidth();
+  public void               setWidth(String width);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLOptGroupElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLOptGroupElement.java
new file mode 100644
index 0000000..8e0c70c
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLOptGroupElement.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Group options together in logical subdivisions. See the OPTGROUP element 
+ * definition in HTML 4.0.
+ */
+public interface HTMLOptGroupElement extends HTMLElement {
+  /**
+   * The control is unavailable in this context. See the disabled attribute 
+   * definition in HTML 4.0.
+   */
+  public boolean            getDisabled();
+  public void               setDisabled(boolean disabled);
+  /**
+   * Assigns a label to this option group. See the label attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getLabel();
+  public void               setLabel(String label);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLOptionElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLOptionElement.java
new file mode 100644
index 0000000..441b412
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLOptionElement.java
@@ -0,0 +1,59 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * A selectable choice. See the OPTION element definition in HTML 4.0.
+ */
+public interface HTMLOptionElement extends HTMLElement {
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * Stores the initial value of the <code>selected</code> attribute. 
+   */
+  public boolean            getDefaultSelected();
+  public void               setDefaultSelected(boolean defaultSelected);
+  /**
+   * The text contained within the option element. 
+   */
+  public String             getText();
+  /**
+   * The index of this <code>OPTION</code> in its parent <code>SELECT</code>. 
+   */
+  public int                getIndex();
+  public void               setIndex(int index);
+  /**
+   * The control is unavailable in this context. See the disabled attribute 
+   * definition in HTML 4.0.
+   */
+  public boolean            getDisabled();
+  public void               setDisabled(boolean disabled);
+  /**
+   * Option label for use in hierarchical menus. See the label attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getLabel();
+  public void               setLabel(String label);
+  /**
+   * Means that this option is initially selected. See the selected attribute 
+   * definition in HTML 4.0.
+   */
+  public boolean            getSelected();
+  /**
+   * The current form control value. See the value attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getValue();
+  public void               setValue(String value);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLParagraphElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLParagraphElement.java
new file mode 100644
index 0000000..ade807d
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLParagraphElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Paragraphs. See the P element definition in HTML 4.0.
+ */
+public interface HTMLParagraphElement extends HTMLElement {
+  /**
+   * Horizontal text alignment. See the align attribute definition in HTML 
+   * 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLParamElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLParamElement.java
new file mode 100644
index 0000000..37f4d74
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLParamElement.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Parameters fed to the <code>OBJECT</code> element. See the PARAM element 
+ * definition in HTML 4.0.
+ */
+public interface HTMLParamElement extends HTMLElement {
+  /**
+   * The name of a run-time parameter. See the name attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Content type for the <code>value</code> attribute when
+   * <code>valuetype</code> has the value "ref". See the type attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+  /**
+   * The value of a run-time parameter. See the value attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getValue();
+  public void               setValue(String value);
+  /**
+   * Information about the meaning of the <code>value</code> attributevalue. 
+   * See the valuetype attribute definition in HTML 4.0.
+   */
+  public String             getValueType();
+  public void               setValueType(String valueType);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLPreElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLPreElement.java
new file mode 100644
index 0000000..f69ca12
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLPreElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Preformatted text. See the PRE element definition in HTML 4.0.
+ */
+public interface HTMLPreElement extends HTMLElement {
+  /**
+   * Fixed width for content. See the width attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public int                getWidth();
+  public void               setWidth(int width);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLQuoteElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLQuoteElement.java
new file mode 100644
index 0000000..d665212
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLQuoteElement.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * For the <code>Q</code> and <code>BLOCKQUOTE</code> elements. See the Q 
+ * element definition in HTML 4.0.
+ */
+public interface HTMLQuoteElement extends HTMLElement {
+  /**
+   * A URI designating a document that designates a source document or 
+   * message. See the cite attribute definition in HTML 4.0.
+   */
+  public String             getCite();
+  public void               setCite(String cite);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLScriptElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLScriptElement.java
new file mode 100644
index 0000000..fb1dcba
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLScriptElement.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Script statements. See the SCRIPT element definition in HTML 4.0.
+ */
+public interface HTMLScriptElement extends HTMLElement {
+  /**
+   * The script content of the element. 
+   */
+  public String             getText();
+  public void               setText(String text);
+  /**
+   * Reserved for future use. 
+   */
+  public String             getHtmlFor();
+  public void               setHtmlFor(String htmlFor);
+  /**
+   * Reserved for future use. 
+   */
+  public String             getEvent();
+  public void               setEvent(String event);
+  /**
+   * The character encoding of the linked resource. See the charset attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getCharset();
+  public void               setCharset(String charset);
+  /**
+   * Indicates that the user agent can defer processing of the script.  See 
+   * the defer attribute definition in HTML 4.0.
+   */
+  public boolean            getDefer();
+  public void               setDefer(boolean defer);
+  /**
+   * URI designating an external script. See the src attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getSrc();
+  public void               setSrc(String src);
+  /**
+   * The content type of the script language. See the type attribute definition
+   *  in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLSelectElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLSelectElement.java
new file mode 100644
index 0000000..1c7da44
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLSelectElement.java
@@ -0,0 +1,100 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The select element allows the selection of an option. The containedoptions 
+ * can be directly accessed through the select element as acollection. See 
+ * the SELECT element definition in HTML 4.0.
+ */
+public interface HTMLSelectElement extends HTMLElement {
+  /**
+   * The type of control created. 
+   */
+  public String             getType();
+  /**
+   * The ordinal index of the selected option. The value -1 is returned ifno 
+   * element is selected. If multiple options are selected, the index ofthe 
+   * first selected option is returned. 
+   */
+  public int                getSelectedIndex();
+  public void               setSelectedIndex(int selectedIndex);
+  /**
+   * The current form control value. 
+   */
+  public String             getValue();
+  public void               setValue(String value);
+  /**
+   * The number of options in this <code>SELECT</code>. 
+   */
+  public int                getLength();
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * The collection of <code>OPTION</code> elements contained by this element. 
+   */
+  public HTMLCollection     getOptions();
+  /**
+   * The control is unavailable in this context. See the disabled attribute 
+   * definition in HTML 4.0.
+   */
+  public boolean            getDisabled();
+  public void               setDisabled(boolean disabled);
+  /**
+   * If true, multiple <code>OPTION</code> elements may be selected in this 
+   * <code>SELECT</code>. See the multiple attribute definition in HTML 4.0.
+   */
+  public boolean            getMultiple();
+  public void               setMultiple(boolean multiple);
+  /**
+   * Form control or object name when submitted with a form. See the name 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * Number of visible rows. See the size attribute definition in HTML 4.0.
+   */
+  public int                getSize();
+  public void               setSize(int size);
+  /**
+   * Index that represents the element's position in the tabbing order. See 
+   * the tabindex attribute definition in HTML 4.0.
+   */
+  public int                getTabIndex();
+  public void               setTabIndex(int tabIndex);
+  /**
+   * Add a new element to the collection of <code>OPTION</code> elementsfor 
+   * this <code>SELECT</code>.
+   * @param element The element to add.
+   * @param before The element to insert before, or NULL for the head of the 
+   *   list.
+   */
+  public void               add(HTMLElement element, 
+                                HTMLElement before);
+  /**
+   * Remove an element from the collection of <code>OPTION</code> elementsfor 
+   * this <code>SELECT</code>. Does nothing if no element has the givenindex.
+   * @param index The index of the item to remove.
+   */
+  public void               remove(int index);
+  /**
+   * Removes keyboard focus from this element.
+   */
+  public void               blur();
+  /**
+   * Gives keyboard focus to this element.
+   */
+  public void               focus();
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLStyleElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLStyleElement.java
new file mode 100644
index 0000000..3832d13
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLStyleElement.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Style information. A more detailed style sheet object model is planned to be
+ * defined in a separate document. See the STYLE element definition in HTML 
+ * 4.0.
+ */
+public interface HTMLStyleElement extends HTMLElement {
+  /**
+   * Enables/disables the style sheet. 
+   */
+  public boolean            getDisabled();
+  public void               setDisabled(boolean disabled);
+  /**
+   * Designed for use with one or more target media. See the media attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getMedia();
+  public void               setMedia(String media);
+  /**
+   * The style sheet language (Internet media type). See the type attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLTableCaptionElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableCaptionElement.java
new file mode 100644
index 0000000..0ee7dee
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableCaptionElement.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Table caption See the CAPTION element definition in HTML 4.0.
+ */
+public interface HTMLTableCaptionElement extends HTMLElement {
+  /**
+   * Caption alignment with respect to the table. See the align attribute 
+   * definition in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLTableCellElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableCellElement.java
new file mode 100644
index 0000000..cb825cc
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableCellElement.java
@@ -0,0 +1,107 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The object used to represent the <code>TH</code> and <code>TD</code>
+ * elements. See the TD element definition in HTML 4.0.
+ */
+public interface HTMLTableCellElement extends HTMLElement {
+  /**
+   * The index of this cell in the row. 
+   */
+  public int                getCellIndex();
+  public void               setCellIndex(int cellIndex);
+  /**
+   * Abbreviation for header cells. See the abbr attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getAbbr();
+  public void               setAbbr(String abbr);
+  /**
+   * Horizontal alignment of data in cell. See the align attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Names group of related headers. See the axis attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getAxis();
+  public void               setAxis(String axis);
+  /**
+   * Cell background color. See the bgcolor attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public String             getBgColor();
+  public void               setBgColor(String bgColor);
+  /**
+   * Alignment character for cells in a column. See the char attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getCh();
+  public void               setCh(String ch);
+  /**
+   * Offset of alignment character. See the charoff attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getChOff();
+  public void               setChOff(String chOff);
+  /**
+   * Number of columns spanned by cell. See the colspan attribute definition 
+   * in HTML 4.0.
+   */
+  public int                getColSpan();
+  public void               setColSpan(int colSpan);
+  /**
+   * List of <code>id</code> attribute values for header cells. See the 
+   * headers attribute definition in HTML 4.0.
+   */
+  public String             getHeaders();
+  public void               setHeaders(String headers);
+  /**
+   * Cell height. See the height attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getHeight();
+  public void               setHeight(String height);
+  /**
+   * Suppress word wrapping. See the nowrap attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public boolean            getNoWrap();
+  public void               setNoWrap(boolean noWrap);
+  /**
+   * Number of rows spanned by cell. See the rowspan attribute definition in 
+   * HTML 4.0.
+   */
+  public int                getRowSpan();
+  public void               setRowSpan(int rowSpan);
+  /**
+   * Scope covered by header cells. See the scope attribute definition in HTML 
+   * 4.0.
+   */
+  public String             getScope();
+  public void               setScope(String scope);
+  /**
+   * Vertical alignment of data in cell. See the valign attribute definition 
+   * in HTML 4.0.
+   */
+  public String             getVAlign();
+  public void               setVAlign(String vAlign);
+  /**
+   * Cell width. See the width attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getWidth();
+  public void               setWidth(String width);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLTableColElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableColElement.java
new file mode 100644
index 0000000..4d4eee5
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableColElement.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Regroups the <code>COL</code> and <code>COLGROUP</code> elements. See the 
+ * COL element definition in HTML 4.0.
+ */
+public interface HTMLTableColElement extends HTMLElement {
+  /**
+   * Horizontal alignment of cell data in column. See the align attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Alignment character for cells in a column. See the char attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getCh();
+  public void               setCh(String ch);
+  /**
+   * Offset of alignment character. See the charoff attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getChOff();
+  public void               setChOff(String chOff);
+  /**
+   * Indicates the number of columns in a group or affected by a grouping. See 
+   * the span attribute definition in HTML 4.0.
+   */
+  public int                getSpan();
+  public void               setSpan(int span);
+  /**
+   * Vertical alignment of cell data in column. See the valign attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getVAlign();
+  public void               setVAlign(String vAlign);
+  /**
+   * Default column width. See the width attribute definition in HTML 4.0.
+   */
+  public String             getWidth();
+  public void               setWidth(String width);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLTableElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableElement.java
new file mode 100644
index 0000000..dbb3cfa
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableElement.java
@@ -0,0 +1,142 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The create* and delete* methods on the table allow authors to constructand 
+ * modify tables. HTML 4.0 specifies that only one of each of the 
+ * <code>CAPTION</code>, <code>THEAD</code>, and <code>TFOOT</code>elements 
+ * may exist in a table. Therefore, if one exists, and thecreateTHead() or 
+ * createTFoot() method is called, the method returnsthe existing THead or 
+ * TFoot element. See the TABLE element definition in HTML 4.0.
+ */
+public interface HTMLTableElement extends HTMLElement {
+  /**
+   * Returns the table's <code>CAPTION</code>, or void if none exists. 
+   */
+  public HTMLTableCaptionElement getCaption();
+  public void               setCaption(HTMLTableCaptionElement caption);
+  /**
+   * Returns the table's <code>THEAD</code>, or <code>null</code> if none 
+   * exists. 
+   */
+  public HTMLTableSectionElement getTHead();
+  public void               setTHead(HTMLTableSectionElement tHead);
+  /**
+   * Returns the table's <code>TFOOT</code>, or <code>null</code> if none 
+   * exists. 
+   */
+  public HTMLTableSectionElement getTFoot();
+  public void               setTFoot(HTMLTableSectionElement tFoot);
+  /**
+   * Returns a collection of all the rows in the table, including all in 
+   * <code>THEAD</code>, <code>TFOOT</code>, all <code>TBODY</code> elements. 
+   */
+  public HTMLCollection     getRows();
+  /**
+   * Returns a collection of the defined table bodies. 
+   */
+  public HTMLCollection     getTBodies();
+  /**
+   * Specifies the table's position with respect to the rest of the document. 
+   * See the align attribute definition in HTML 4.0. This attribute is 
+   * deprecated in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Cell background color. See the bgcolor attribute definition in HTML 4.0. 
+   * This attribute is deprecated in HTML 4.0.
+   */
+  public String             getBgColor();
+  public void               setBgColor(String bgColor);
+  /**
+   * The width of the border around the table. See the border attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getBorder();
+  public void               setBorder(String border);
+  /**
+   * Specifies the horizontal and vertical space between cell content andcell 
+   * borders. See the cellpadding attribute definition in HTML 4.0.
+   */
+  public String             getCellPadding();
+  public void               setCellPadding(String cellPadding);
+  /**
+   * Specifies the horizontal and vertical separation between cells. See the 
+   * cellspacing attribute definition in HTML 4.0.
+   */
+  public String             getCellSpacing();
+  public void               setCellSpacing(String cellSpacing);
+  /**
+   * Specifies which external table borders to render. See the frame attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getFrame();
+  public void               setFrame(String frame);
+  /**
+   * Specifies which internal table borders to render. See the rules attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getRules();
+  public void               setRules(String rules);
+  /**
+   * Supplementary description about the purpose or structureof a table. See 
+   * the summary attribute definition in HTML 4.0.
+   */
+  public String             getSummary();
+  public void               setSummary(String summary);
+  /**
+   * Specifies the desired table width. See the width attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getWidth();
+  public void               setWidth(String width);
+  /**
+   * Create a table header row or return an existing one.
+   * @return A new table header element (<code>THEAD</code>).
+   */
+  public HTMLElement        createTHead();
+  /**
+   * Delete the header from the table, if one exists.
+   */
+  public void               deleteTHead();
+  /**
+   * Create a table footer row or return an existing one.
+   * @return A footer element (<code>TFOOT</code>).
+   */
+  public HTMLElement        createTFoot();
+  /**
+   * Delete the footer from the table, if one exists.
+   */
+  public void               deleteTFoot();
+  /**
+   * Create a new table caption object or return an existing one.
+   * @return A <code>CAPTION</code> element.
+   */
+  public HTMLElement        createCaption();
+  /**
+   * Delete the table caption, if one exists.
+   */
+  public void               deleteCaption();
+  /**
+   * Insert a new empty row in the table.Note. A table row cannot be empty
+   * according to HTML 4.0 Recommendation. 
+   * @param index The row number where to insert a new row.
+   * @return The newly created row.
+   */
+  public HTMLElement        insertRow(int index);
+  /**
+   * Delete a table row.
+   * @param index The index of the row to be deleted.
+   */
+  public void               deleteRow(int index);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLTableRowElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableRowElement.java
new file mode 100644
index 0000000..223054d
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableRowElement.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * A row in a table. See the TR element definition in HTML 4.0.
+ */
+public interface HTMLTableRowElement extends HTMLElement {
+  /**
+   * The index of this row, relative to the entire table. 
+   */
+  public int                getRowIndex();
+  public void               setRowIndex(int rowIndex);
+  /**
+   * The index of this row, relative to the current section(<code>THEAD</code>
+   * , <code>TFOOT</code>, or <code>TBODY</code>). 
+   */
+  public int                getSectionRowIndex();
+  public void               setSectionRowIndex(int sectionRowIndex);
+  /**
+   * The collection of cells in this row. 
+   */
+  public HTMLCollection     getCells();
+  public void               setCells(HTMLCollection cells);
+  /**
+   * Horizontal alignment of data within cells of this row. See the align 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Background color for rows. See the bgcolor attribute definition in HTML 
+   * 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public String             getBgColor();
+  public void               setBgColor(String bgColor);
+  /**
+   * Alignment character for cells in a column. See the char attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getCh();
+  public void               setCh(String ch);
+  /**
+   * Offset of alignment character. See the charoff attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getChOff();
+  public void               setChOff(String chOff);
+  /**
+   * Vertical alignment of data within cells of this row. See the valign 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getVAlign();
+  public void               setVAlign(String vAlign);
+  /**
+   * Insert an empty <code>TD</code> cell into this row.
+   * @param index The place to insert the cell.
+   * @return The newly created cell.
+   */
+  public HTMLElement        insertCell(int index);
+  /**
+   * Delete a cell from the current row.
+   * @param index The index of the cell to delete.
+   */
+  public void               deleteCell(int index);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLTableSectionElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableSectionElement.java
new file mode 100644
index 0000000..993eed2
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLTableSectionElement.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The <code>THEAD</code>, <code>TFOOT</code>, and <code>TBODY</code>elements. 
+ */
+public interface HTMLTableSectionElement extends HTMLElement {
+  /**
+   * Horizontal alignment of data in cells. See the <code>align</code>
+   * attribute for HTMLTheadElement for details. 
+   */
+  public String             getAlign();
+  public void               setAlign(String align);
+  /**
+   * Alignment character for cells in a column. See the char attribute 
+   * definition in HTML 4.0.
+   */
+  public String             getCh();
+  public void               setCh(String ch);
+  /**
+   * Offset of alignment character. See the charoff attribute definition in 
+   * HTML 4.0.
+   */
+  public String             getChOff();
+  public void               setChOff(String chOff);
+  /**
+   * Vertical alignment of data in cells.See the <code>valign</code>attribute 
+   * for HTMLTheadElement for details. 
+   */
+  public String             getVAlign();
+  public void               setVAlign(String vAlign);
+  /**
+   * The collection of rows in this table section. 
+   */
+  public HTMLCollection     getRows();
+  /**
+   * Insert a row into this section.
+   * @param index The row number where to insert a new row.
+   * @return The newly created row.
+   */
+  public HTMLElement        insertRow(int index);
+  /**
+   * Delete a row from this section.
+   * @param index The index of the row to be deleted.
+   */
+  public void               deleteRow(int index);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLTextAreaElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLTextAreaElement.java
new file mode 100644
index 0000000..0f2dcbc
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLTextAreaElement.java
@@ -0,0 +1,92 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Multi-line text field. See the TEXTAREA element definition in HTML 4.0.
+ */
+public interface HTMLTextAreaElement extends HTMLElement {
+  /**
+   * Stores the initial control value (i.e., the initial value of
+   * <code>value</code>). 
+   */
+  public String             getDefaultValue();
+  public void               setDefaultValue(String defaultValue);
+  /**
+   * Returns the <code>FORM</code> element containing this control.Returns 
+   * null if this control is not within the context of a form. 
+   */
+  public HTMLFormElement    getForm();
+  /**
+   * A single character access key to give access to the form control. See the 
+   * accesskey attribute definition in HTML 4.0.
+   */
+  public String             getAccessKey();
+  public void               setAccessKey(String accessKey);
+  /**
+   * Width of control (in characters). See the cols attribute definition in 
+   * HTML 4.0.
+   */
+  public int                getCols();
+  public void               setCols(int cols);
+  /**
+   * The control is unavailable in this context. See the disabled attribute 
+   * definition in HTML 4.0.
+   */
+  public boolean            getDisabled();
+  public void               setDisabled(boolean disabled);
+  /**
+   * Form control or object name when submitted with a form. See the name 
+   * attribute definition in HTML 4.0.
+   */
+  public String             getName();
+  public void               setName(String name);
+  /**
+   * This control is read-only. See the readonly attribute definition in HTML 
+   * 4.0.
+   */
+  public boolean            getReadOnly();
+  public void               setReadOnly(boolean readOnly);
+  /**
+   * Number of text rows. See the rows attribute definition in HTML 4.0.
+   */
+  public int                getRows();
+  public void               setRows(int rows);
+  /**
+   * Index that represents the element's position in the tabbing order. See 
+   * the tabindex attribute definition in HTML 4.0.
+   */
+  public int                getTabIndex();
+  public void               setTabIndex(int tabIndex);
+  /**
+   * The type of this form control. 
+   */
+  public String             getType();
+  /**
+   * The current textual content of the multi-line text field. If the entirety 
+   * of the data can not fit into a single wstring, the implementation may 
+   * truncate the data.
+   */
+  public String             getValue();
+  public void               setValue(String value);
+  /**
+   * Removes keyboard focus from this element.
+   */
+  public void               blur();
+  /**
+   * Gives keyboard focus to this element.
+   */
+  public void               focus();
+  /**
+   * Select the contents of the <code>TEXTAREA</code>.
+   */
+  public void               select();
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLTitleElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLTitleElement.java
new file mode 100644
index 0000000..43298b7
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLTitleElement.java
@@ -0,0 +1,22 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * The document title. See the TITLE element definition in HTML 4.0.
+ */
+public interface HTMLTitleElement extends HTMLElement {
+  /**
+   * The specified title as a string. 
+   */
+  public String             getText();
+  public void               setText(String text);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/html/HTMLUListElement.java b/debian/dom2-bindings/org/w3c/dom/html/HTMLUListElement.java
new file mode 100644
index 0000000..f3aaf5a
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/html/HTMLUListElement.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of
+ * Technology, Institut National de Recherche en Informatique et en
+ * Automatique, Keio University).
+ * All Rights Reserved. http://www.w3.org/Consortium/Legal/
+ */
+
+package org.w3c.dom.html;
+
+import org.w3c.dom.*;
+
+/**
+ * Unordered list. See the UL element definition in HTML 4.0.
+ */
+public interface HTMLUListElement extends HTMLElement {
+  /**
+   * Reduce spacing between list items. See the compact attribute definition 
+   * in HTML 4.0. This attribute is deprecated in HTML 4.0.
+   */
+  public boolean            getCompact();
+  public void               setCompact(boolean compact);
+  /**
+   * Bullet style. See the type attribute definition in HTML 4.0. This 
+   * attribute is deprecated in HTML 4.0.
+   */
+  public String             getType();
+  public void               setType(String type);
+}
+
diff --git a/debian/dom2-bindings/org/w3c/dom/ranges/DocumentRange.java b/debian/dom2-bindings/org/w3c/dom/ranges/DocumentRange.java
new file mode 100644
index 0000000..6b52267
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/ranges/DocumentRange.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.ranges;
+
+/**
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document Object Model (DOM) Level 2 Traversal and Range Specification</a>.
+ * @since DOM Level 2
+ */
+public interface DocumentRange {
+    /**
+     * This interface can be obtained from the object implementing the 
+     * <code>Document</code> interface using binding-specific casting 
+     * methods.
+     * @return The initial state of the Range returned from this method is 
+     *   such that both of its boundary-points are positioned at the 
+     *   beginning of the corresponding Document, before any content. The 
+     *   Range returned can only be used to select content associated with 
+     *   this Document, or with DocumentFragments and Attrs for which this 
+     *   Document is the <code>ownerDocument</code>.
+     */
+    public Range createRange();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/ranges/Range.java b/debian/dom2-bindings/org/w3c/dom/ranges/Range.java
new file mode 100644
index 0000000..a576b4d
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/ranges/Range.java
@@ -0,0 +1,416 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.ranges;
+
+import org.w3c.dom.Node;
+import org.w3c.dom.DOMException;
+import org.w3c.dom.DocumentFragment;
+
+/**
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document Object Model (DOM) Level 2 Traversal and Range Specification</a>.
+ * @since DOM Level 2
+ */
+public interface Range {
+    /**
+     * Node within which the Range begins 
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public Node getStartContainer()
+                       throws DOMException;
+
+    /**
+     * Offset within the starting node of the Range. 
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public int getStartOffset()
+                       throws DOMException;
+
+    /**
+     * Node within which the Range ends 
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public Node getEndContainer()
+                       throws DOMException;
+
+    /**
+     * Offset within the ending node of the Range. 
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public int getEndOffset()
+                       throws DOMException;
+
+    /**
+     * TRUE if the Range is collapsed 
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public boolean getCollapsed()
+                       throws DOMException;
+
+    /**
+     * The deepest common ancestor container of the Range's two 
+     * boundary-points.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public Node getCommonAncestorContainer()
+                       throws DOMException;
+
+    /**
+     * Sets the attributes describing the start of the Range. 
+     * @param refNode The <code>refNode</code> value. This parameter must be 
+     *   different from <code>null</code>.
+     * @param offset The <code>startOffset</code> value. 
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code> or an ancestor 
+     *   of <code>refNode</code> is an Entity, Notation, or DocumentType 
+     *   node.
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if <code>offset</code> is negative or greater 
+     *   than the number of child units in <code>refNode</code>. Child units 
+     *   are 16-bit units if <code>refNode</code> is a type of CharacterData 
+     *   node (e.g., a Text or Comment node) or a ProcessingInstruction 
+     *   node. Child units are Nodes in all other cases.
+     *   <br>INVALID_STATE_ERR: Raised if <code>detach()</code> has already 
+     *   been invoked on this object.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>refNode</code> was created 
+     *   from a different document than the one that created this range.
+     */
+    public void setStart(Node refNode, 
+                         int offset)
+                         throws RangeException, DOMException;
+
+    /**
+     * Sets the attributes describing the end of a Range.
+     * @param refNode The <code>refNode</code> value. This parameter must be 
+     *   different from <code>null</code>.
+     * @param offset The <code>endOffset</code> value. 
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code> or an ancestor 
+     *   of <code>refNode</code> is an Entity, Notation, or DocumentType 
+     *   node.
+     * @exception DOMException
+     *   INDEX_SIZE_ERR: Raised if <code>offset</code> is negative or greater 
+     *   than the number of child units in <code>refNode</code>. Child units 
+     *   are 16-bit units if <code>refNode</code> is a type of CharacterData 
+     *   node (e.g., a Text or Comment node) or a ProcessingInstruction 
+     *   node. Child units are Nodes in all other cases.
+     *   <br>INVALID_STATE_ERR: Raised if <code>detach()</code> has already 
+     *   been invoked on this object.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>refNode</code> was created 
+     *   from a different document than the one that created this range.
+     */
+    public void setEnd(Node refNode, 
+                       int offset)
+                       throws RangeException, DOMException;
+
+    /**
+     * Sets the start position to be before a node
+     * @param refNode Range starts before <code>refNode</code> 
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if the root container of 
+     *   <code>refNode</code> is not an Attr, Document, or DocumentFragment 
+     *   node or if <code>refNode</code> is a Document, DocumentFragment, 
+     *   Attr, Entity, or Notation node.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>refNode</code> was created 
+     *   from a different document than the one that created this range.
+     */
+    public void setStartBefore(Node refNode)
+                               throws RangeException, DOMException;
+
+    /**
+     * Sets the start position to be after a node
+     * @param refNode Range starts after <code>refNode</code> 
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if the root container of 
+     *   <code>refNode</code> is not an Attr, Document, or DocumentFragment 
+     *   node or if <code>refNode</code> is a Document, DocumentFragment, 
+     *   Attr, Entity, or Notation node.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>refNode</code> was created 
+     *   from a different document than the one that created this range.
+     */
+    public void setStartAfter(Node refNode)
+                              throws RangeException, DOMException;
+
+    /**
+     * Sets the end position to be before a node. 
+     * @param refNode Range ends before <code>refNode</code> 
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if the root container of 
+     *   <code>refNode</code> is not an Attr, Document, or DocumentFragment 
+     *   node or if <code>refNode</code> is a Document, DocumentFragment, 
+     *   Attr, Entity, or Notation node.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>refNode</code> was created 
+     *   from a different document than the one that created this range.
+     */
+    public void setEndBefore(Node refNode)
+                             throws RangeException, DOMException;
+
+    /**
+     * Sets the end of a Range to be after a node 
+     * @param refNode Range ends after <code>refNode</code>. 
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if the root container of 
+     *   <code>refNode</code> is not an Attr, Document or DocumentFragment 
+     *   node or if <code>refNode</code> is a Document, DocumentFragment, 
+     *   Attr, Entity, or Notation node.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>refNode</code> was created 
+     *   from a different document than the one that created this range.
+     */
+    public void setEndAfter(Node refNode)
+                            throws RangeException, DOMException;
+
+    /**
+     * Collapse a Range onto one of its boundary-points 
+     * @param toStart If TRUE, collapses the Range onto its start; if FALSE, 
+     *   collapses it onto its end. 
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public void collapse(boolean toStart)
+                         throws DOMException;
+
+    /**
+     * Select a node and its contents 
+     * @param refNode The node to select. 
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if an ancestor of <code>refNode</code> 
+     *   is an Entity, Notation or DocumentType node or if 
+     *   <code>refNode</code> is a Document, DocumentFragment, Attr, Entity, 
+     *   or Notation node.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>refNode</code> was created 
+     *   from a different document than the one that created this range.
+     */
+    public void selectNode(Node refNode)
+                           throws RangeException, DOMException;
+
+    /**
+     * Select the contents within a node 
+     * @param refNode Node to select from 
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code> or an ancestor 
+     *   of <code>refNode</code> is an Entity, Notation or DocumentType node.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>refNode</code> was created 
+     *   from a different document than the one that created this range.
+     */
+    public void selectNodeContents(Node refNode)
+                                   throws RangeException, DOMException;
+
+    // CompareHow
+    /**
+     * Compare start boundary-point of <code>sourceRange</code> to start 
+     * boundary-point of Range on which <code>compareBoundaryPoints</code> 
+     * is invoked.
+     */
+    public static final short START_TO_START            = 0;
+    /**
+     * Compare start boundary-point of <code>sourceRange</code> to end 
+     * boundary-point of Range on which <code>compareBoundaryPoints</code> 
+     * is invoked.
+     */
+    public static final short START_TO_END              = 1;
+    /**
+     * Compare end boundary-point of <code>sourceRange</code> to end 
+     * boundary-point of Range on which <code>compareBoundaryPoints</code> 
+     * is invoked.
+     */
+    public static final short END_TO_END                = 2;
+    /**
+     * Compare end boundary-point of <code>sourceRange</code> to start 
+     * boundary-point of Range on which <code>compareBoundaryPoints</code> 
+     * is invoked.
+     */
+    public static final short END_TO_START              = 3;
+
+    /**
+     * Compare the boundary-points of two Ranges in a document.
+     * @param how A code representing the type of comparison, as defined 
+     *   above.
+     * @param sourceRange The <code>Range</code> on which this current 
+     *   <code>Range</code> is compared to.
+     * @return  -1, 0 or 1 depending on whether the corresponding 
+     *   boundary-point of the Range is respectively before, equal to, or 
+     *   after the corresponding boundary-point of <code>sourceRange</code>. 
+     * @exception DOMException
+     *   WRONG_DOCUMENT_ERR: Raised if the two Ranges are not in the same 
+     *   Document or DocumentFragment.
+     *   <br>INVALID_STATE_ERR: Raised if <code>detach()</code> has already 
+     *   been invoked on this object.
+     */
+    public short compareBoundaryPoints(short how, 
+                                       Range sourceRange)
+                                       throws DOMException;
+
+    /**
+     * Removes the contents of a Range from the containing document or 
+     * document fragment without returning a reference to the removed 
+     * content.  
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of the content of 
+     *   the Range is read-only or any of the nodes that contain any of the 
+     *   content of the Range are read-only.
+     *   <br>INVALID_STATE_ERR: Raised if <code>detach()</code> has already 
+     *   been invoked on this object.
+     */
+    public void deleteContents()
+                               throws DOMException;
+
+    /**
+     * Moves the contents of a Range from the containing document or document 
+     * fragment to a new DocumentFragment. 
+     * @return A DocumentFragment containing the extracted contents. 
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of the content of 
+     *   the Range is read-only or any of the nodes which contain any of the 
+     *   content of the Range are read-only.
+     *   <br>HIERARCHY_REQUEST_ERR: Raised if a DocumentType node would be 
+     *   extracted into the new DocumentFragment.
+     *   <br>INVALID_STATE_ERR: Raised if <code>detach()</code> has already 
+     *   been invoked on this object.
+     */
+    public DocumentFragment extractContents()
+                                            throws DOMException;
+
+    /**
+     * Duplicates the contents of a Range 
+     * @return A DocumentFragment that contains content equivalent to this 
+     *   Range.
+     * @exception DOMException
+     *   HIERARCHY_REQUEST_ERR: Raised if a DocumentType node would be 
+     *   extracted into the new DocumentFragment.
+     *   <br>INVALID_STATE_ERR: Raised if <code>detach()</code> has already 
+     *   been invoked on this object.
+     */
+    public DocumentFragment cloneContents()
+                                          throws DOMException;
+
+    /**
+     * Inserts a node into the Document or DocumentFragment at the start of 
+     * the Range. If the container is a Text node, this will be split at the 
+     * start of the Range (as if the Text node's splitText method was 
+     * performed at the insertion point) and the insertion will occur 
+     * between the two resulting Text nodes. Adjacent Text nodes will not be 
+     * automatically merged. If the node to be inserted is a 
+     * DocumentFragment node, the children will be inserted rather than the 
+     * DocumentFragment node itself.
+     * @param newNode The node to insert at the start of the Range 
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor container of the 
+     *   start of the Range is read-only.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code>newNode</code> and the 
+     *   container of the start of the Range were not created from the same 
+     *   document.
+     *   <br>HIERARCHY_REQUEST_ERR: Raised if the container of the start of 
+     *   the Range is of a type that does not allow children of the type of 
+     *   <code>newNode</code> or if <code>newNode</code> is an ancestor of 
+     *   the container.
+     *   <br>INVALID_STATE_ERR: Raised if <code>detach()</code> has already 
+     *   been invoked on this object.
+     * @exception RangeException
+     *   INVALID_NODE_TYPE_ERR: Raised if <code>newNode</code> is an Attr, 
+     *   Entity, Notation, or Document node.
+     */
+    public void insertNode(Node newNode)
+                           throws DOMException, RangeException;
+
+    /**
+     * Reparents the contents of the Range to the given node and inserts the 
+     * node at the position of the start of the Range. 
+     * @param newParent The node to surround the contents with. 
+     * @exception DOMException
+     *   NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor container of 
+     *   either boundary-point of the Range is read-only.
+     *   <br>WRONG_DOCUMENT_ERR: Raised if <code> newParent</code> and the 
+     *   container of the start of the Range were not created from the same 
+     *   document.
+     *   <br>HIERARCHY_REQUEST_ERR: Raised if the container of the start of 
+     *   the Range is of a type that does not allow children of the type of 
+     *   <code>newParent</code> or if <code>newParent</code> is an ancestor 
+     *   of the container or if <code>node</code> would end up with a child 
+     *   node of a type not allowed by the type of <code>node</code>.
+     *   <br>INVALID_STATE_ERR: Raised if <code>detach()</code> has already 
+     *   been invoked on this object.
+     * @exception RangeException
+     *   BAD_BOUNDARYPOINTS_ERR: Raised if the Range partially selects a 
+     *   non-text node.
+     *   <br>INVALID_NODE_TYPE_ERR: Raised if <code> node</code> is an Attr, 
+     *   Entity, DocumentType, Notation, Document, or DocumentFragment node.
+     */
+    public void surroundContents(Node newParent)
+                                 throws DOMException, RangeException;
+
+    /**
+     * Produces a new Range whose boundary-points are equal to the 
+     * boundary-points of the Range. 
+     * @return The duplicated Range. 
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public Range cloneRange()
+                            throws DOMException;
+
+    /**
+     * Returns the contents of a Range as a string. This string contains only 
+     * the data characters, not any markup. 
+     * @return The contents of the Range.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public String toString()
+                           throws DOMException;
+
+    /**
+     * Called to indicate that the Range is no longer in use and that the 
+     * implementation may relinquish any resources associated with this 
+     * Range. Subsequent calls to any methods or attribute getters on this 
+     * Range will result in a <code>DOMException</code> being thrown with an 
+     * error code of <code>INVALID_STATE_ERR</code>.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if <code>detach()</code> has already been 
+     *   invoked on this object.
+     */
+    public void detach()
+                       throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/ranges/RangeException.java b/debian/dom2-bindings/org/w3c/dom/ranges/RangeException.java
new file mode 100644
index 0000000..551008e
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/ranges/RangeException.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.ranges;
+
+/**
+ * Range operations may throw a <code>RangeException</code> as specified in 
+ * their method descriptions.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document Object Model (DOM) Level 2 Traversal and Range Specification</a>.
+ * @since DOM Level 2
+ */
+public class RangeException extends RuntimeException {
+    public RangeException(short code, String message) {
+       super(message);
+       this.code = code;
+    }
+    public short   code;
+    // RangeExceptionCode
+    /**
+     * If the boundary-points of a Range do not meet specific requirements.
+     */
+    public static final short BAD_BOUNDARYPOINTS_ERR    = 1;
+    /**
+     * If the container of an boundary-point of a Range is being set to either 
+     * a node of an invalid type or a node with an ancestor of an invalid 
+     * type.
+     */
+    public static final short INVALID_NODE_TYPE_ERR     = 2;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/stylesheets/DocumentStyle.java b/debian/dom2-bindings/org/w3c/dom/stylesheets/DocumentStyle.java
new file mode 100644
index 0000000..2270505
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/stylesheets/DocumentStyle.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.stylesheets;
+
+/**
+ *  The <code>DocumentStyle</code> interface provides a mechanism by which the 
+ * style sheets embedded in a document can be retrieved. The expectation is 
+ * that an instance of the <code>DocumentStyle</code> interface can be 
+ * obtained by using binding-specific casting methods on an instance of the 
+ * <code>Document</code> interface. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface DocumentStyle {
+    /**
+     *  A list containing all the style sheets explicitly linked into or 
+     * embedded in a document. For HTML documents, this includes external 
+     * style sheets, included via the HTML  LINK element, and inline  STYLE 
+     * elements. In XML, this includes external style sheets, included via 
+     * style sheet processing instructions (see ). 
+     */
+    public StyleSheetList getStyleSheets();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/stylesheets/LinkStyle.java b/debian/dom2-bindings/org/w3c/dom/stylesheets/LinkStyle.java
new file mode 100644
index 0000000..481bd19
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/stylesheets/LinkStyle.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.stylesheets;
+
+/**
+ *  The <code>LinkStyle</code> interface provides a mechanism by which a style 
+ * sheet can be retrieved from the node responsible for linking it into a 
+ * document. An instance of the <code>LinkStyle</code> interface can be 
+ * obtained using binding-specific casting methods on an instance of a 
+ * linking node (<code>HTMLLinkElement</code>, <code>HTMLStyleElement</code> 
+ * or <code>ProcessingInstruction</code> in DOM Level 2). 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface LinkStyle {
+    /**
+     *  The style sheet. 
+     */
+    public StyleSheet getSheet();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/stylesheets/MediaList.java b/debian/dom2-bindings/org/w3c/dom/stylesheets/MediaList.java
new file mode 100644
index 0000000..3b10ed2
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/stylesheets/MediaList.java
@@ -0,0 +1,90 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.stylesheets;
+
+import org.w3c.dom.DOMException;
+
+/**
+ *  The <code>MediaList</code> interface provides the abstraction of an 
+ * ordered collection of media, without defining or constraining how this 
+ * collection is implemented. An empty list is the same as a list that 
+ * contains the medium <code>"all"</code>. 
+ * <p> The items in the <code>MediaList</code> are accessible via an integral 
+ * index, starting from 0. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface MediaList {
+    /**
+     *  The parsable textual representation of the media list. This is a 
+     * comma-separated list of media. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified string value has a syntax error 
+     *   and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this media list is 
+     *   readonly.
+     */
+    public String getMediaText();
+    /**
+     *  The parsable textual representation of the media list. This is a 
+     * comma-separated list of media. 
+     * @exception DOMException
+     *   SYNTAX_ERR: Raised if the specified string value has a syntax error 
+     *   and is unparsable.
+     *   <br>NO_MODIFICATION_ALLOWED_ERR: Raised if this media list is 
+     *   readonly.
+     */
+    public void setMediaText(String mediaText)
+                             throws DOMException;
+
+    /**
+     *  The number of media in the list. The range of valid media is 
+     * <code>0</code> to <code>length-1</code> inclusive. 
+     */
+    public int getLength();
+
+    /**
+     *  Returns the <code>index</code>th in the list. If <code>index</code> is 
+     * greater than or equal to the number of media in the list, this 
+     * returns <code>null</code>. 
+     * @param index  Index into the collection. 
+     * @return  The medium at the <code>index</code>th position in the 
+     *   <code>MediaList</code>, or <code>null</code> if that is not a valid 
+     *   index. 
+     */
+    public String item(int index);
+
+    /**
+     *  Deletes the medium indicated by <code>oldMedium</code> from the list. 
+     * @param oldMedium The medium to delete in the media list.
+     * @exception DOMException
+     *    NO_MODIFICATION_ALLOWED_ERR: Raised if this list is readonly. 
+     *   <br> NOT_FOUND_ERR: Raised if <code>oldMedium</code> is not in the 
+     *   list. 
+     */
+    public void deleteMedium(String oldMedium)
+                             throws DOMException;
+
+    /**
+     *  Adds the medium <code>newMedium</code> to the end of the list. If the 
+     * <code>newMedium</code> is already used, it is first removed. 
+     * @param newMedium The new medium to add.
+     * @exception DOMException
+     *    INVALID_CHARACTER_ERR: If the medium contains characters that are 
+     *   invalid in the underlying style language. 
+     *   <br> NO_MODIFICATION_ALLOWED_ERR: Raised if this list is readonly. 
+     */
+    public void appendMedium(String newMedium)
+                             throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/stylesheets/StyleSheet.java b/debian/dom2-bindings/org/w3c/dom/stylesheets/StyleSheet.java
new file mode 100644
index 0000000..3da4307
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/stylesheets/StyleSheet.java
@@ -0,0 +1,103 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.stylesheets;
+
+import org.w3c.dom.Node;
+
+/**
+ *  The <code>StyleSheet</code> interface is the abstract base interface for 
+ * any type of style sheet. It represents a single style sheet associated 
+ * with a structured document. In HTML, the StyleSheet interface represents 
+ * either an external style sheet, included via the HTML  LINK element, or 
+ * an inline  STYLE element. In XML, this interface represents an external 
+ * style sheet, included via a style sheet processing instruction. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface StyleSheet {
+    /**
+     *  This specifies the style sheet language for this style sheet. The 
+     * style sheet language is specified as a content type (e.g. 
+     * "text/css"). The content type is often specified in the 
+     * <code>ownerNode</code>. Also see the type attribute definition for 
+     * the <code>LINK</code> element in HTML 4.0, and the type 
+     * pseudo-attribute for the XML style sheet processing instruction. 
+     */
+    public String getType();
+
+    /**
+     *  <code>false</code> if the style sheet is applied to the document. 
+     * <code>true</code> if it is not. Modifying this attribute may cause a 
+     * new resolution of style for the document. A stylesheet only applies 
+     * if both an appropriate medium definition is present and the disabled 
+     * attribute is false. So, if the media doesn't apply to the current 
+     * user agent, the <code>disabled</code> attribute is ignored. 
+     */
+    public boolean getDisabled();
+    /**
+     *  <code>false</code> if the style sheet is applied to the document. 
+     * <code>true</code> if it is not. Modifying this attribute may cause a 
+     * new resolution of style for the document. A stylesheet only applies 
+     * if both an appropriate medium definition is present and the disabled 
+     * attribute is false. So, if the media doesn't apply to the current 
+     * user agent, the <code>disabled</code> attribute is ignored. 
+     */
+    public void setDisabled(boolean disabled);
+
+    /**
+     *  The node that associates this style sheet with the document. For HTML, 
+     * this may be the corresponding <code>LINK</code> or <code>STYLE</code> 
+     * element. For XML, it may be the linking processing instruction. For 
+     * style sheets that are included by other style sheets, the value of 
+     * this attribute is <code>null</code>. 
+     */
+    public Node getOwnerNode();
+
+    /**
+     *  For style sheet languages that support the concept of style sheet 
+     * inclusion, this attribute represents the including style sheet, if 
+     * one exists. If the style sheet is a top-level style sheet, or the 
+     * style sheet language does not support inclusion, the value of this 
+     * attribute is <code>null</code>. 
+     */
+    public StyleSheet getParentStyleSheet();
+
+    /**
+     *  If the style sheet is a linked style sheet, the value of its attribute 
+     * is its location. For inline style sheets, the value of this attribute 
+     * is <code>null</code>. See the href attribute definition for the 
+     * <code>LINK</code> element in HTML 4.0, and the href pseudo-attribute 
+     * for the XML style sheet processing instruction. 
+     */
+    public String getHref();
+
+    /**
+     *  The advisory title. The title is often specified in the 
+     * <code>ownerNode</code>. See the title attribute definition for the 
+     * <code>LINK</code> element in HTML 4.0, and the title pseudo-attribute 
+     * for the XML style sheet processing instruction. 
+     */
+    public String getTitle();
+
+    /**
+     *  The intended destination media for style information. The media is 
+     * often specified in the <code>ownerNode</code>. If no media has been 
+     * specified, the <code>MediaList</code> will be empty. See the media 
+     * attribute definition for the <code>LINK</code> element in HTML 4.0, 
+     * and the media pseudo-attribute for the XML style sheet processing 
+     * instruction . Modifying the media list may cause a change to the 
+     * attribute <code>disabled</code>. 
+     */
+    public MediaList getMedia();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/stylesheets/StyleSheetList.java b/debian/dom2-bindings/org/w3c/dom/stylesheets/StyleSheetList.java
new file mode 100644
index 0000000..b8f9a44
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/stylesheets/StyleSheetList.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.stylesheets;
+
+/**
+ * The <code>StyleSheetList</code> interface provides the abstraction of an 
+ * ordered collection of style sheets. 
+ * <p> The items in the <code>StyleSheetList</code> are accessible via an 
+ * integral index, starting from 0. 
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113'>Document Object Model (DOM) Level 2 Style Specification</a>.
+ * @since DOM Level 2
+ */
+public interface StyleSheetList {
+    /**
+     *  The number of <code>StyleSheets</code> in the list. The range of valid 
+     * child stylesheet indices is <code>0</code> to <code>length-1</code> 
+     * inclusive. 
+     */
+    public int getLength();
+
+    /**
+     *  Used to retrieve a style sheet by ordinal index. If index is greater 
+     * than or equal to the number of style sheets in the list, this returns 
+     * <code>null</code>. 
+     * @param index Index into the collection
+     * @return The style sheet at the <code>index</code> position in the 
+     *   <code>StyleSheetList</code>, or <code>null</code> if that is not a 
+     *   valid index. 
+     */
+    public StyleSheet item(int index);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/traversal/DocumentTraversal.java b/debian/dom2-bindings/org/w3c/dom/traversal/DocumentTraversal.java
new file mode 100644
index 0000000..103cde0
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/traversal/DocumentTraversal.java
@@ -0,0 +1,92 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.traversal;
+
+import org.w3c.dom.Node;
+import org.w3c.dom.DOMException;
+
+/**
+ * <code>DocumentTraversal</code> contains methods that create 
+ * <code>NodeIterators</code> and <code>TreeWalkers</code> to traverse a 
+ * node and its children in document order (depth first, pre-order 
+ * traversal, which is equivalent to the order in which the start tags occur 
+ * in the text representation of the document). In DOMs which support the 
+ * Traversal feature, <code>DocumentTraversal</code> will be implemented by 
+ * the same objects that implement the Document interface.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document Object Model (DOM) Level 2 Traversal and Range Specification</a>.
+ * @since DOM Level 2
+ */
+public interface DocumentTraversal {
+    /**
+     * Create a new <code>NodeIterator</code> over the subtree rooted at the 
+     * specified node.
+     * @param root The node which will be iterated together with its 
+     *   children. The <code>NodeIterator</code> is initially positioned 
+     *   just before this node. The <code>whatToShow</code> flags and the 
+     *   filter, if any, are not considered when setting this position. The 
+     *   root must not be <code>null</code>.
+     * @param whatToShow This flag specifies which node types may appear in 
+     *   the logical view of the tree presented by the 
+     *   <code>NodeIterator</code>. See the description of 
+     *   <code>NodeFilter</code> for the set of possible <code>SHOW_</code> 
+     *   values.These flags can be combined using <code>OR</code>.
+     * @param filter The <code>NodeFilter</code> to be used with this 
+     *   <code>TreeWalker</code>, or <code>null</code> to indicate no filter.
+     * @param entityReferenceExpansion The value of this flag determines 
+     *   whether entity reference nodes are expanded.
+     * @return The newly created <code>NodeIterator</code>.
+     * @exception DOMException
+     *   NOT_SUPPORTED_ERR: Raised if the specified <code>root</code> is 
+     *   <code>null</code>.
+     */
+    public NodeIterator createNodeIterator(Node root, 
+                                           int whatToShow, 
+                                           NodeFilter filter, 
+                                           boolean entityReferenceExpansion)
+                                           throws DOMException;
+
+    /**
+     * Create a new <code>TreeWalker</code> over the subtree rooted at the 
+     * specified node.
+     * @param root The node which will serve as the <code>root</code> for the 
+     *   <code>TreeWalker</code>. The <code>whatToShow</code> flags and the 
+     *   <code>NodeFilter</code> are not considered when setting this value; 
+     *   any node type will be accepted as the <code>root</code>. The 
+     *   <code>currentNode</code> of the <code>TreeWalker</code> is 
+     *   initialized to this node, whether or not it is visible. The 
+     *   <code>root</code> functions as a stopping point for traversal 
+     *   methods that look upward in the document structure, such as 
+     *   <code>parentNode</code> and nextNode. The <code>root</code> must 
+     *   not be <code>null</code>.
+     * @param whatToShow This flag specifies which node types may appear in 
+     *   the logical view of the tree presented by the 
+     *   <code>TreeWalker</code>. See the description of 
+     *   <code>NodeFilter</code> for the set of possible <code>SHOW_</code> 
+     *   values.These flags can be combined using <code>OR</code>.
+     * @param filter The <code>NodeFilter</code> to be used with this 
+     *   <code>TreeWalker</code>, or <code>null</code> to indicate no filter.
+     * @param entityReferenceExpansion If this flag is false, the contents of 
+     *   <code>EntityReference</code> nodes are not presented in the logical 
+     *   view.
+     * @return The newly created <code>TreeWalker</code>.
+     * @exception DOMException
+     *    NOT_SUPPORTED_ERR: Raised if the specified <code>root</code> is 
+     *   <code>null</code>.
+     */
+    public TreeWalker createTreeWalker(Node root, 
+                                       int whatToShow, 
+                                       NodeFilter filter, 
+                                       boolean entityReferenceExpansion)
+                                       throws DOMException;
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/traversal/NodeFilter.java b/debian/dom2-bindings/org/w3c/dom/traversal/NodeFilter.java
new file mode 100644
index 0000000..b9beac4
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/traversal/NodeFilter.java
@@ -0,0 +1,144 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.traversal;
+
+import org.w3c.dom.Node;
+
+/**
+ * Filters are objects that know how to "filter out" nodes. If a 
+ * <code>NodeIterator</code> or <code>TreeWalker</code> is given a 
+ * <code>NodeFilter</code>, it applies the filter before it returns the next 
+ * node. If the filter says to accept the node, the traversal logic returns 
+ * it; otherwise, traversal looks for the next node and pretends that the 
+ * node that was rejected was not there.
+ * <p>The DOM does not provide any filters. <code>NodeFilter</code> is just an 
+ * interface that users can implement to provide their own filters. 
+ * <p><code>NodeFilters</code> do not need to know how to traverse from node 
+ * to node, nor do they need to know anything about the data structure that 
+ * is being traversed. This makes it very easy to write filters, since the 
+ * only thing they have to know how to do is evaluate a single node. One 
+ * filter may be used with a number of different kinds of traversals, 
+ * encouraging code reuse.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document Object Model (DOM) Level 2 Traversal and Range Specification</a>.
+ * @since DOM Level 2
+ */
+public interface NodeFilter {
+    // Constants returned by acceptNode
+    /**
+     * Accept the node. Navigation methods defined for 
+     * <code>NodeIterator</code> or <code>TreeWalker</code> will return this 
+     * node.
+     */
+    public static final short FILTER_ACCEPT             = 1;
+    /**
+     * Reject the node. Navigation methods defined for 
+     * <code>NodeIterator</code> or <code>TreeWalker</code> will not return 
+     * this node. For <code>TreeWalker</code>, the children of this node 
+     * will also be rejected. <code>NodeIterators</code> treat this as a 
+     * synonym for <code>FILTER_SKIP</code>.
+     */
+    public static final short FILTER_REJECT             = 2;
+    /**
+     * Skip this single node. Navigation methods defined for 
+     * <code>NodeIterator</code> or <code>TreeWalker</code> will not return 
+     * this node. For both <code>NodeIterator</code> and 
+     * <code>TreeWalker</code>, the children of this node will still be 
+     * considered. 
+     */
+    public static final short FILTER_SKIP               = 3;
+
+    // Constants for whatToShow
+    /**
+     * Show all <code>Nodes</code>.
+     */
+    public static final int SHOW_ALL                  = 0xFFFFFFFF;
+    /**
+     * Show <code>Element</code> nodes.
+     */
+    public static final int SHOW_ELEMENT              = 0x00000001;
+    /**
+     * Show <code>Attr</code> nodes. This is meaningful only when creating an 
+     * <code>NodeIterator</code> or <code>TreeWalker</code> with an 
+     * attribute node as its <code>root</code>; in this case, it means that 
+     * the attribute node will appear in the first position of the iteration 
+     * or traversal. Since attributes are never children of other nodes, 
+     * they do not appear when traversing over the document tree.
+     */
+    public static final int SHOW_ATTRIBUTE            = 0x00000002;
+    /**
+     * Show <code>Text</code> nodes.
+     */
+    public static final int SHOW_TEXT                 = 0x00000004;
+    /**
+     * Show <code>CDATASection</code> nodes.
+     */
+    public static final int SHOW_CDATA_SECTION        = 0x00000008;
+    /**
+     * Show <code>EntityReference</code> nodes.
+     */
+    public static final int SHOW_ENTITY_REFERENCE     = 0x00000010;
+    /**
+     * Show <code>Entity</code> nodes. This is meaningful only when creating 
+     * an <code>NodeIterator</code> or <code>TreeWalker</code> with an 
+     * <code>Entity</code> node as its <code>root</code>; in this case, it 
+     * means that the <code>Entity</code> node will appear in the first 
+     * position of the traversal. Since entities are not part of the 
+     * document tree, they do not appear when traversing over the document 
+     * tree.
+     */
+    public static final int SHOW_ENTITY               = 0x00000020;
+    /**
+     * Show <code>ProcessingInstruction</code> nodes.
+     */
+    public static final int SHOW_PROCESSING_INSTRUCTION = 0x00000040;
+    /**
+     * Show <code>Comment</code> nodes.
+     */
+    public static final int SHOW_COMMENT              = 0x00000080;
+    /**
+     * Show <code>Document</code> nodes.
+     */
+    public static final int SHOW_DOCUMENT             = 0x00000100;
+    /**
+     * Show <code>DocumentType</code> nodes.
+     */
+    public static final int SHOW_DOCUMENT_TYPE        = 0x00000200;
+    /**
+     * Show <code>DocumentFragment</code> nodes.
+     */
+    public static final int SHOW_DOCUMENT_FRAGMENT    = 0x00000400;
+    /**
+     * Show <code>Notation</code> nodes. This is meaningful only when creating 
+     * an <code>NodeIterator</code> or <code>TreeWalker</code> with a 
+     * <code>Notation</code> node as its <code>root</code>; in this case, it 
+     * means that the <code>Notation</code> node will appear in the first 
+     * position of the traversal. Since notations are not part of the 
+     * document tree, they do not appear when traversing over the document 
+     * tree.
+     */
+    public static final int SHOW_NOTATION             = 0x00000800;
+
+    /**
+     * Test whether a specified node is visible in the logical view of a 
+     * <code>TreeWalker</code> or <code>NodeIterator</code>. This function 
+     * will be called by the implementation of <code>TreeWalker</code> and 
+     * <code>NodeIterator</code>; it is not normally called directly from 
+     * user code. (Though you could do so if you wanted to use the same 
+     * filter to guide your own application logic.)
+     * @param n The node to check to see if it passes the filter or not.
+     * @return A constant to determine whether the node is accepted, 
+     *   rejected, or skipped, as defined above.
+     */
+    public short acceptNode(Node n);
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/traversal/NodeIterator.java b/debian/dom2-bindings/org/w3c/dom/traversal/NodeIterator.java
new file mode 100644
index 0000000..d1f0d08
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/traversal/NodeIterator.java
@@ -0,0 +1,109 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.traversal;
+
+import org.w3c.dom.Node;
+import org.w3c.dom.DOMException;
+
+/**
+ * <code>NodeIterators</code> are used to step through a set of nodes, e.g. 
+ * the set of nodes in a <code>NodeList</code>, the document subtree 
+ * governed by a particular <code>Node</code>, the results of a query, or 
+ * any other set of nodes. The set of nodes to be iterated is determined by 
+ * the implementation of the <code>NodeIterator</code>. DOM Level 2 
+ * specifies a single <code>NodeIterator</code> implementation for 
+ * document-order traversal of a document subtree. Instances of these 
+ * <code>NodeIterators</code> are created by calling 
+ * <code>DocumentTraversal</code><code>.createNodeIterator()</code>.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document Object Model (DOM) Level 2 Traversal and Range Specification</a>.
+ * @since DOM Level 2
+ */
+public interface NodeIterator {
+    /**
+     * The root node of the <code>NodeIterator</code>, as specified when it 
+     * was created.
+     */
+    public Node getRoot();
+
+    /**
+     * This attribute determines which node types are presented via the 
+     * <code>NodeIterator</code>. The available set of constants is defined 
+     * in the <code>NodeFilter</code> interface.  Nodes not accepted by 
+     * <code>whatToShow</code> will be skipped, but their children may still 
+     * be considered. Note that this skip takes precedence over the filter, 
+     * if any. 
+     */
+    public int getWhatToShow();
+
+    /**
+     * The <code>NodeFilter</code> used to screen nodes.
+     */
+    public NodeFilter getFilter();
+
+    /**
+     *  The value of this flag determines whether the children of entity 
+     * reference nodes are visible to the <code>NodeIterator</code>. If 
+     * false, these children  and their descendants will be rejected. Note 
+     * that this rejection takes precedence over <code>whatToShow</code> and 
+     * the filter. Also note that this is currently the only situation where 
+     * <code>NodeIterators</code> may reject a complete subtree rather than 
+     * skipping individual nodes. 
+     * <br>
+     * <br> To produce a view of the document that has entity references 
+     * expanded and does not expose the entity reference node itself, use 
+     * the <code>whatToShow</code> flags to hide the entity reference node 
+     * and set <code>expandEntityReferences</code> to true when creating the 
+     * <code>NodeIterator</code>. To produce a view of the document that has 
+     * entity reference nodes but no entity expansion, use the 
+     * <code>whatToShow</code> flags to show the entity reference node and 
+     * set <code>expandEntityReferences</code> to false.
+     */
+    public boolean getExpandEntityReferences();
+
+    /**
+     * Returns the next node in the set and advances the position of the 
+     * <code>NodeIterator</code> in the set. After a 
+     * <code>NodeIterator</code> is created, the first call to 
+     * <code>nextNode()</code> returns the first node in the set.
+     * @return The next <code>Node</code> in the set being iterated over, or 
+     *   <code>null</code> if there are no more members in that set.
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if this method is called after the 
+     *   <code>detach</code> method was invoked.
+     */
+    public Node nextNode()
+                         throws DOMException;
+
+    /**
+     * Returns the previous node in the set and moves the position of the 
+     * <code>NodeIterator</code> backwards in the set.
+     * @return The previous <code>Node</code> in the set being iterated over, 
+     *   or <code>null</code> if there are no more members in that set. 
+     * @exception DOMException
+     *   INVALID_STATE_ERR: Raised if this method is called after the 
+     *   <code>detach</code> method was invoked.
+     */
+    public Node previousNode()
+                             throws DOMException;
+
+    /**
+     * Detaches the <code>NodeIterator</code> from the set which it iterated 
+     * over, releasing any computational resources and placing the 
+     * <code>NodeIterator</code> in the INVALID state. After 
+     * <code>detach</code> has been invoked, calls to <code>nextNode</code> 
+     * or <code>previousNode</code> will raise the exception 
+     * INVALID_STATE_ERR.
+     */
+    public void detach();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/traversal/TreeWalker.java b/debian/dom2-bindings/org/w3c/dom/traversal/TreeWalker.java
new file mode 100644
index 0000000..e90da06
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/traversal/TreeWalker.java
@@ -0,0 +1,182 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.traversal;
+
+import org.w3c.dom.Node;
+import org.w3c.dom.DOMException;
+
+/**
+ * <code>TreeWalker</code> objects are used to navigate a document tree or 
+ * subtree using the view of the document defined by their 
+ * <code>whatToShow</code> flags and filter (if any). Any function which 
+ * performs navigation using a <code>TreeWalker</code> will automatically 
+ * support any view defined by a <code>TreeWalker</code>.
+ * <p>Omitting nodes from the logical view of a subtree can result in a 
+ * structure that is substantially different from the same subtree in the 
+ * complete, unfiltered document. Nodes that are siblings in the 
+ * <code>TreeWalker</code> view may be children of different, widely 
+ * separated nodes in the original view. For instance, consider a 
+ * <code>NodeFilter</code> that skips all nodes except for Text nodes and 
+ * the root node of a document. In the logical view that results, all text 
+ * nodes will be siblings and appear as direct children of the root node, no 
+ * matter how deeply nested the structure of the original document.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document Object Model (DOM) Level 2 Traversal and Range Specification</a>.
+ * @since DOM Level 2
+ */
+public interface TreeWalker {
+    /**
+     * The <code>root</code> node of the <code>TreeWalker</code>, as specified 
+     * when it was created.
+     */
+    public Node getRoot();
+
+    /**
+     * This attribute determines which node types are presented via the 
+     * <code>TreeWalker</code>. The available set of constants is defined in 
+     * the <code>NodeFilter</code> interface.  Nodes not accepted by 
+     * <code>whatToShow</code> will be skipped, but their children may still 
+     * be considered. Note that this skip takes precedence over the filter, 
+     * if any. 
+     */
+    public int getWhatToShow();
+
+    /**
+     * The filter used to screen nodes.
+     */
+    public NodeFilter getFilter();
+
+    /**
+     * The value of this flag determines whether the children of entity 
+     * reference nodes are visible to the <code>TreeWalker</code>. If false, 
+     * these children  and their descendants will be rejected. Note that 
+     * this rejection takes precedence over <code>whatToShow</code> and the 
+     * filter, if any. 
+     * <br> To produce a view of the document that has entity references 
+     * expanded and does not expose the entity reference node itself, use 
+     * the <code>whatToShow</code> flags to hide the entity reference node 
+     * and set <code>expandEntityReferences</code> to true when creating the 
+     * <code>TreeWalker</code>. To produce a view of the document that has 
+     * entity reference nodes but no entity expansion, use the 
+     * <code>whatToShow</code> flags to show the entity reference node and 
+     * set <code>expandEntityReferences</code> to false.
+     */
+    public boolean getExpandEntityReferences();
+
+    /**
+     * The node at which the <code>TreeWalker</code> is currently positioned.
+     * <br>Alterations to the DOM tree may cause the current node to no longer 
+     * be accepted by the <code>TreeWalker</code>'s associated filter. 
+     * <code>currentNode</code> may also be explicitly set to any node, 
+     * whether or not it is within the subtree specified by the 
+     * <code>root</code> node or would be accepted by the filter and 
+     * <code>whatToShow</code> flags. Further traversal occurs relative to 
+     * <code>currentNode</code> even if it is not part of the current view, 
+     * by applying the filters in the requested direction; if no traversal 
+     * is possible, <code>currentNode</code> is not changed. 
+     * @exception DOMException
+     *   NOT_SUPPORTED_ERR: Raised if an attempt is made to set 
+     *   <code>currentNode</code> to <code>null</code>.
+     */
+    public Node getCurrentNode();
+    /**
+     * The node at which the <code>TreeWalker</code> is currently positioned.
+     * <br>Alterations to the DOM tree may cause the current node to no longer 
+     * be accepted by the <code>TreeWalker</code>'s associated filter. 
+     * <code>currentNode</code> may also be explicitly set to any node, 
+     * whether or not it is within the subtree specified by the 
+     * <code>root</code> node or would be accepted by the filter and 
+     * <code>whatToShow</code> flags. Further traversal occurs relative to 
+     * <code>currentNode</code> even if it is not part of the current view, 
+     * by applying the filters in the requested direction; if no traversal 
+     * is possible, <code>currentNode</code> is not changed. 
+     * @exception DOMException
+     *   NOT_SUPPORTED_ERR: Raised if an attempt is made to set 
+     *   <code>currentNode</code> to <code>null</code>.
+     */
+    public void setCurrentNode(Node currentNode)
+                         throws DOMException;
+
+    /**
+     * Moves to and returns the closest visible ancestor node of the current 
+     * node. If the search for <code>parentNode</code> attempts to step 
+     * upward from the <code>TreeWalker</code>'s <code>root</code> node, or 
+     * if it fails to find a visible ancestor node, this method retains the 
+     * current position and returns <code>null</code>.
+     * @return The new parent node, or <code>null</code> if the current node 
+     *   has no parent  in the <code>TreeWalker</code>'s logical view.  
+     */
+    public Node parentNode();
+
+    /**
+     * Moves the <code>TreeWalker</code> to the first visible child of the 
+     * current node, and returns the new node. If the current node has no 
+     * visible children, returns <code>null</code>, and retains the current 
+     * node.
+     * @return The new node, or <code>null</code> if the current node has no 
+     *   visible children  in the <code>TreeWalker</code>'s logical view.  
+     */
+    public Node firstChild();
+
+    /**
+     * Moves the <code>TreeWalker</code> to the last visible child of the 
+     * current node, and returns the new node. If the current node has no 
+     * visible children, returns <code>null</code>, and retains the current 
+     * node.
+     * @return The new node, or <code>null</code> if the current node has no 
+     *   children  in the <code>TreeWalker</code>'s logical view.  
+     */
+    public Node lastChild();
+
+    /**
+     * Moves the <code>TreeWalker</code> to the previous sibling of the 
+     * current node, and returns the new node. If the current node has no 
+     * visible previous sibling, returns <code>null</code>, and retains the 
+     * current node.
+     * @return The new node, or <code>null</code> if the current node has no 
+     *   previous sibling.  in the <code>TreeWalker</code>'s logical view.  
+     */
+    public Node previousSibling();
+
+    /**
+     * Moves the <code>TreeWalker</code> to the next sibling of the current 
+     * node, and returns the new node. If the current node has no visible 
+     * next sibling, returns <code>null</code>, and retains the current node.
+     * @return The new node, or <code>null</code> if the current node has no 
+     *   next sibling.  in the <code>TreeWalker</code>'s logical view.  
+     */
+    public Node nextSibling();
+
+    /**
+     * Moves the <code>TreeWalker</code> to the previous visible node in 
+     * document order relative to the current node, and returns the new 
+     * node. If the current node has no previous node,  or if the search for 
+     * <code>previousNode</code> attempts to step upward from the 
+     * <code>TreeWalker</code>'s <code>root</code> node,  returns 
+     * <code>null</code>, and retains the current node. 
+     * @return The new node, or <code>null</code> if the current node has no 
+     *   previous node  in the <code>TreeWalker</code>'s logical view.  
+     */
+    public Node previousNode();
+
+    /**
+     * Moves the <code>TreeWalker</code> to the next visible node in document 
+     * order relative to the current node, and returns the new node. If the 
+     * current node has no next node, or if the search for nextNode attempts 
+     * to step upward from the <code>TreeWalker</code>'s <code>root</code> 
+     * node, returns <code>null</code>, and retains the current node.
+     * @return The new node, or <code>null</code> if the current node has no 
+     *   next node  in the <code>TreeWalker</code>'s logical view.  
+     */
+    public Node nextNode();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/views/AbstractView.java b/debian/dom2-bindings/org/w3c/dom/views/AbstractView.java
new file mode 100644
index 0000000..97e8f0e
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/views/AbstractView.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.views;
+
+/**
+ * A base interface that all views shall derive from.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Views-20001113'>Document Object Model (DOM) Level 2 Views Specification</a>.
+ * @since DOM Level 2
+ */
+public interface AbstractView {
+    /**
+     * The source <code>DocumentView</code> of which this is an 
+     * <code>AbstractView</code>.
+     */
+    public DocumentView getDocument();
+
+}
diff --git a/debian/dom2-bindings/org/w3c/dom/views/DocumentView.java b/debian/dom2-bindings/org/w3c/dom/views/DocumentView.java
new file mode 100644
index 0000000..2cb9eeb
--- /dev/null
+++ b/debian/dom2-bindings/org/w3c/dom/views/DocumentView.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 2000 World Wide Web Consortium,
+ * (Massachusetts Institute of Technology, Institut National de
+ * Recherche en Informatique et en Automatique, Keio University). All
+ * Rights Reserved. This program is distributed under the W3C's Software
+ * Intellectual Property License. This program is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+ * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+ */
+
+package org.w3c.dom.views;
+
+/**
+ * The <code>DocumentView</code> interface is implemented by 
+ * <code>Document</code> objects in DOM implementations supporting DOM 
+ * Views. It provides an attribute to retrieve the default view of a 
+ * document.
+ * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Views-20001113'>Document Object Model (DOM) Level 2 Views Specification</a>.
+ * @since DOM Level 2
+ */
+public interface DocumentView {
+    /**
+     * The default <code>AbstractView</code> for this <code>Document</code>, 
+     * or <code>null</code> if none available.
+     */
+    public AbstractView getDefaultView();
+
+}

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/libxerces2-java.git



More information about the pkg-java-commits mailing list